WO2018225641A1 - Communication control method, recording medium, and communication control apparatus - Google Patents

Communication control method, recording medium, and communication control apparatus Download PDF

Info

Publication number
WO2018225641A1
WO2018225641A1 PCT/JP2018/021162 JP2018021162W WO2018225641A1 WO 2018225641 A1 WO2018225641 A1 WO 2018225641A1 JP 2018021162 W JP2018021162 W JP 2018021162W WO 2018225641 A1 WO2018225641 A1 WO 2018225641A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
response
communication control
data processing
communication
Prior art date
Application number
PCT/JP2018/021162
Other languages
French (fr)
Japanese (ja)
Inventor
淳一 樋口
Original Assignee
日本電気株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電気株式会社 filed Critical 日本電気株式会社
Publication of WO2018225641A1 publication Critical patent/WO2018225641A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]

Definitions

  • the present invention relates to a communication control method, a program, and an apparatus, and more particularly, to a communication control method, a recording medium, and a communication control apparatus that control communication between a data processing apparatus and a remote apparatus to which an input / output device is connected.
  • Various input / output devices such as hard disk drives and graphic boards are connected to the computer via an internal system bus.
  • the number of devices that can be connected to a computer is physically limited by the size of the casing of the computer and the power supply capacity.
  • Patent Document 1 discloses a system including a data processing device and a remote device connected to the device, and encapsulates instructions for the device from the data processing device to the remote device.
  • a system for transmitting via is disclosed.
  • the device connected to the remote device can be controlled like a device connected to the system bus inside the data processing device, the expansion of computer resources to the data processing device is flexible and easy. Can be done.
  • the communication state between the data processing device and the remote device is deteriorated on the network, so that an unexpected communication disconnection or reconnection occurs and the system including the data processing device is abnormal. It may be in a state. For example, when a device connected to the system bus of a data processing device is disconnected unintentionally, there is a problem that the system cannot operate normally or a recovery process is required even if it is operated. . Since the user needs to manually reset the system to perform the restoration process, it is difficult to continue the system operation.
  • the present invention has been made in view of the above-described problems, and a communication control method that enables continuous operation of a system even when the communication state between a data processing device and a remote device deteriorates,
  • An object is to provide a program and apparatus.
  • a first aspect of the present invention is a communication control method, comprising: determining a communication state between a data processing device and a remote device that communicates with the data processing device via a network; and the data processing device and When data is transmitted from one of the remote devices to the other, if the communication state does not satisfy a predetermined standard, the communication control device corresponding to the data transmission source, to the transmission source, Responding to the data.
  • a recording medium having a communication control program recorded thereon, wherein a communication state between a data processing device and a remote device communicating with the data processing device via a network is determined by a computer. And a communication control device corresponding to the data transmission source when data is transmitted from one of the data processing device and the remote device to the other when the communication state does not satisfy a predetermined criterion. And a step of responding to the data to the transmission source.
  • a communication control device for determining a communication state between a data processing device and a remote device communicating with the data processing device via a network, and the data processing
  • a response unit configured to respond to the data with respect to a transmission source of the data when the communication state does not satisfy a predetermined standard when data is transmitted from one of the device and the remote device to the other; .
  • the communication control device makes a response to the data to the data transmission source. Is possible.
  • 1 is a schematic diagram of a communication system according to a first embodiment.
  • 1 is a schematic configuration diagram of a data processing device and a remote device according to a first embodiment.
  • It is a block diagram of the processor side communication control apparatus and device side communication control apparatus which concern on 1st Embodiment.
  • It is a figure which shows the flowchart of the communication control method performed by the processor side communication control apparatus and device side communication control apparatus which concern on 1st Embodiment.
  • It is a schematic block diagram of the response learning apparatus which concerns on 1st Embodiment.
  • It is a figure which shows the flowchart of the response learning method performed by the response learning apparatus which concerns on 1st Embodiment.
  • FIG. 1 is a schematic diagram of a communication system 1 according to the present embodiment.
  • the communication system 1 includes a data processing device 10, a remote device 20, and a response learning device 40.
  • the data processing device 10, the remote device 20, and the response learning device 40 are connected by a wired connection or a wireless connection via a network 70 such as the Internet.
  • a network 70 such as the Internet.
  • one data processing device 10 and one remote device 20 are provided, but a plurality of data processing devices 10 and remote devices 20 may be provided.
  • the communication system 1 may include other devices such as other servers, terminals, and storage devices.
  • the data processing apparatus 10 is an apparatus (computer) that receives an instruction from a user, performs a predetermined process by a processor in accordance with the instruction, and outputs in accordance with the process.
  • the remote device 20 is also called an I / O (Input / Output) connection device, and is a device connected to the data processing device 10 via the network 70.
  • a device 30 (also referred to as an input / output device or an I / O device) used by the data processing apparatus 10 is connected to the remote device 20.
  • the device 30 is an arbitrary device that processes or inputs / outputs information, such as a storage device (for example, a hard disk drive), an image processing device (for example, a graphic board), or a USB (Universal Serial Bus) device.
  • the data processing device 10 and the remote device 20 are connected as an extension of the system bus. Therefore, the data processing apparatus 10 can handle the device 30 connected to the remote apparatus 20 as if it is directly connected to the system bus inside the data processing apparatus 10.
  • the response learning device 40 is a device that learns communication between the data processing device 10 and the remote device 20 and generates a response rule described later.
  • the configuration information storage device 50 is a storage device that records configuration information indicating the device configuration of the communication system 1.
  • the configuration information is information indicating the type (storage device, image processing device, etc.) of the device 30 connected to the remote device 20, for example.
  • the current configuration information is recorded as needed.
  • the operation information storage device 60 is a storage device that records operation information indicating how the communication system 1 is operating.
  • the operation information is information indicating a product that is manufactured in a manufacturing system including the communication system 1, for example.
  • current operation information is recorded at any time.
  • the configuration information storage device 50 and the operation information storage device 60 are connected to the network 70, but may be incorporated in any of the data processing device 10, the remote device 20, and the response learning device 40.
  • FIG. 2 is a schematic configuration diagram of the data processing device 10 and the remote device 20 according to the present embodiment.
  • the data processing device 10 is a computer, and includes a CPU 11 (Central Processing Unit), a memory 13, a storage device 14, an interface 15, and a processor-side communication control device 100.
  • the CPU 11, the memory 13, the storage device 14, the interface 15, and the processor side communication control device 100 are connected by a system bus 12.
  • the processor-side communication control device 100 may be provided fixed to the data processing device 10 or may be provided detachably from the data processing device 10.
  • the data processing device 10 may be an independent device, or may be integrated with other devices.
  • the system bus 12 (also referred to as a data bus or a bus) is a path for transferring data inside the computer.
  • any standard such as ISA, PCI, or PCI Express is used.
  • the interface 15 is a connection unit for connecting to an external device.
  • the interface 15 includes an electric circuit necessary for connection, a connection terminal, and the like.
  • the interface 15 exchanges data with a connected external device or the like according to a signal from the CPU 11.
  • the storage device 14 records a program executed by the data processing device 10, data of a processing result by the program, and the like.
  • the storage device 14 includes a read-only ROM (Read Only Memory), a readable / writable hard disk drive, a flash memory, or the like.
  • the storage device 14 may include a computer-readable portable storage medium such as a CD-ROM.
  • the memory 13 includes a RAM (Random Access Memory) that temporarily records data being processed by the CPU 11, a program read from the storage device 14, and data.
  • the CPU 11 temporarily records temporary data used for processing in the memory 13, reads a program recorded in the storage device 14, and performs various calculations, control, discrimination, etc. on the temporary data according to the program. It is a processor which performs the processing operation of. Further, the CPU 11 records the processing result data in the storage device 14 and transmits the processing result data to the outside via the interface 15.
  • the remote device 20 includes an interface 25 and a device side communication control device 200.
  • the interface 25 and the device side communication control apparatus 200 are connected by a system bus 22.
  • the device-side communication control device 200 may be fixed to the remote device 20 or may be detachable from the remote device 20.
  • the remote device 20 may be an independent device or may be integrated with other devices.
  • the configuration of the system bus 22 and the interface 25 is the same as that of the system bus 12 and the interface 15.
  • the interface 25 is connected to the device 30 used by the data processing apparatus 10.
  • the device 30 connected to the interface 25 may be disposed either outside or inside the housing of the remote device 20.
  • the processor-side communication control apparatus 100 and the device-side communication control apparatus 200 have unique identifiers that do not overlap with other processor-side communication control apparatuses 100 and device-side communication control apparatuses 200 in the same network 70, respectively.
  • a set of the processor-side communication control device 100 and the device-side communication control device 200 having the same identifier constitutes a virtual system bus switch via the network 70, and the system bus 12 of the data processing device 10 and the remote device 20 Connect the system bus 22.
  • the CPU 11 of the data processing apparatus 10 transmits / receives data to / from the device 30 connected to the remote apparatus 20 so as to be directly connected to the system bus 12 of the data processing apparatus 10. be able to. Specific configurations of the processor side communication control apparatus 100 and the device side communication control apparatus 200 will be described later with reference to FIG.
  • the data processing device 10 and the remote device 20 are not limited to the specific configuration shown in FIG.
  • Each of the data processing device 10 and the remote device 20 is not limited to one device, and may be configured by connecting two or more physically separated devices in a wired or wireless manner.
  • Each unit included in the data processing device 10 and the remote device 20 may be realized by an electric circuit configuration.
  • the electric circuit configuration is a term that conceptually includes a single device, a plurality of devices, a chipset, or a cloud.
  • At least a part of the data processing device 10 and the remote device 20 may be provided in the SaaS (Software as a Service) format. That is, at least a part of functions for realizing the data processing device 10 and the remote device 20 may be executed by software executed via a network.
  • SaaS Software as a Service
  • FIG. 3 is a block diagram of the processor side communication control apparatus 100 and the device side communication control apparatus 200 according to the present embodiment.
  • the lines connecting the blocks indicate the main data flow, and there may be data flows other than those shown in FIG.
  • each block shows a functional unit configuration, not a hardware (device) unit configuration. Therefore, the blocks shown in FIG. 3 may be implemented in a single device, or may be separately implemented in a plurality of devices.
  • the processor-side communication control device 100 includes a system bus-side interface 101, a dummy response unit 102, a communication monitoring unit 103, a processor-side bridge unit 104, a network-side interface 105, a transmission data storage device 106, and a response rule storage.
  • Device 107 The system bus side interface 101 is a connection unit for connecting to the system bus 12 of the data processing apparatus 10 and has a connection terminal (for example, a PCI Express terminal) according to the type of the system bus 12.
  • the network side interface 105 is a connection unit for connecting to the network 70, and has a connection mechanism (wired connection terminal or wireless connection antenna) according to the type of the network 70.
  • the processor side bridge unit 104 configures a virtual system bus switch in cooperation with the device side bridge unit 204. Specifically, the processor-side bridge unit 104 encapsulates data (packets) transmitted from the data processing device 10 (CPU 11) to the device 30 connected to the remote device 20 and then transmits the data (packet) to the network 70. The encapsulated data is decapsulated (decapsulated) by the device side bridge unit 204 and reaches the device 30. In addition, when the processor side bridge unit 104 receives the data encapsulated by the device side bridge unit 204, the processor side bridge unit 104 decapsulates the data (decapsulation) and then passes the data to the data processing apparatus 10 (CPU 11). With such a configuration, the CPU 11 of the data processing apparatus 10 exchanges data with the device 30 connected to the remote apparatus 20 without performing special processing (protocol conversion or encoding) on the transmitted data. It can be performed.
  • the communication monitoring unit 103 monitors the communication state with the remote device 20 that is the communication partner of the data processing device 10, and determines whether or not the communication state satisfies a predetermined standard. Specifically, the communication monitoring unit 103 calculates an index indicating a communication state between the data processing device 10 and the remote device 20 at a predetermined time interval, and performs communication when the calculated index does not satisfy a predetermined standard. It is determined that the state is bad, and the dummy response unit 102 is instructed to start a dummy response. On the other hand, the communication monitoring unit 103 determines that the communication state is good when the calculated index satisfies a predetermined criterion, and instructs the dummy response unit 102 to end the dummy response. Depending on the definition of the predetermined criterion, the processing when the criterion is satisfied and when the criterion is not satisfied may be set in reverse.
  • the response time from the remote device 20, the communication speed with the remote device 20, the packet discard rate (error rate) from the remote device 20, and the presence or absence of a response to the keep alive packet by the remote device 20 Etc. can be used. That is, when the response time is less than (or below) a predetermined value, it is determined that the communication state is good, and when the response time is greater (or more) than the predetermined value, it is determined that the communication state is bad. Alternatively, it is determined that the communication state is good when the communication speed is higher (or higher) than the predetermined value, and it is determined that the communication state is lower when the communication speed is lower (or lower) than the predetermined value.
  • the packet discard rate (error rate) is less than (or below) a predetermined value
  • it is determined that the communication state is good and when it is greater than (or above) a predetermined value, it is determined that the communication state is bad.
  • it is determined that the communication state is good when there is a response to the keep-alive packet and it is determined that the communication state is bad when there is no response.
  • a value input by the user may be used, or a value determined by the processor-side communication control device 100 may be used.
  • the determination of the communication state is not limited to the one shown here, and any value and reference indicating the communication state can be used.
  • a predetermined response for example, acceptance of an instruction
  • a response indicating acquired data is returned.
  • an abnormal communication state that is, a bad communication state
  • a predetermined response may not be returned after data is transmitted from the data processing device 10 to the remote device 20 (device 30).
  • the dummy response unit 102 has a case where the communication state does not satisfy a predetermined standard (that is, when a dummy response start instruction is received from the communication monitoring unit 103). A dummy response is started. Further, the dummy response unit 102 ends the dummy response when the communication state satisfies a predetermined standard after the dummy response starts (that is, when a dummy response end instruction is received from the communication monitoring unit 103). Details of the dummy response process will be described below.
  • the dummy response unit 102 acquires the data (packet) transmitted from the data processing device 10 (CPU 11) regardless of whether the communication state is good or bad, and records it in the transmission data storage device 106. In the transmission data storage device 106, data for a predetermined time used for determining the dummy response is recorded, and data exceeding the time is deleted.
  • the dummy response unit 102 transmits the transmitted data. Thereafter, the transmitted data reaches the device 30 connected to the remote apparatus 20 via the processor side bridge unit 104 and the device side bridge unit 204.
  • the dummy response unit 102 blocks the transmitted data.
  • the dummy response unit 102 acquires a response rule recorded in advance in the response rule storage device 107.
  • the response rule is a rule that associates a pattern of data (packet) to be transmitted with a response (dummy response) corresponding to the pattern. That is, the dummy response simulates a response to be returned to data transmitted from the data processing device 10 (CPU 11) to the remote device 20 (device 30) at the normal time.
  • the length of the pattern of data recorded in the response rule is arbitrarily set.
  • the response rule is learned from normal communication by a response learning method to be described later, or is set by the user and recorded in the response rule storage device 107 in advance.
  • the dummy response unit 102 determines a dummy response associated with the pattern as a dummy response corresponding to the transmitted data.
  • the method of determining the dummy response corresponding to the transmitted data from the response rule is not limited to this, and an arbitrary method can be used.
  • the similarity between the transmitted data and the response rule pattern may be calculated, and when the similarity is equal to or higher than a predetermined threshold or higher than the predetermined threshold, a dummy response associated with the pattern may be determined.
  • the dummy response unit 102 may determine a dummy response from the response rule based on data recorded in the transmission data storage device 106 (that is, data that has already been transmitted) and data that will be transmitted. Specifically, the dummy response unit 102 transmits a dummy response associated with the pattern when the response rule pattern is included in the data string obtained by combining the already transmitted data and the data to be transmitted. It is determined as a dummy response corresponding to the data to be processed. In other words, the dummy response unit 102 determines a dummy response based on data transmitted in a predetermined time range including a time when the communication state does not satisfy the predetermined standard (that is, a time when the dummy response is started).
  • the dummy response unit 102 may determine a dummy response from the response rule based on the characteristics of the transmitted data in addition to the transmitted data.
  • the characteristics of the transmitted data are information accompanying the transmitted data. For example, information indicating the addresses of the transmission source and the transmission destination, or information (TLP type, command that conforms to the PCI Express packet (TLP: Transaction Layer Packet)) Memory access address, I / O access address, TAG, configuration register, message, payload, etc.).
  • TLP type command that conforms to the PCI Express packet (TLP: Transaction Layer Packet)) Memory access address, I / O access address, TAG, configuration register, message, payload, etc.
  • the response rule records a pattern of data to be transmitted, data characteristics, and a dummy response in association with each other.
  • the dummy response unit 102 is the case where any pattern of the response rule is included in the transmitted data and the characteristics of the transmitted data and the data characteristics of the response rule are the same or similar. And the dummy response associated with the characteristics of the data is determined as a dummy response corresponding to the transmitted data.
  • the dummy response unit 102 may determine a dummy response from the response rule based on at least one of the configuration information and the operation information of the communication system 1 in addition to the transmitted data.
  • the current configuration information (that is, at the time of data transmission) is acquired from the configuration information storage device 50.
  • the current operation information (that is, at the time of data transmission) is acquired from the operation information storage device 60.
  • the response rule records a pattern of data to be transmitted, at least one of configuration information and operation information, and a dummy response in association with each other.
  • the dummy response unit 102 is a case where any pattern of response rules is included in the transmitted data, and at least one of the current configuration information and operation information and at least one of the response rule configuration information and operation information is If they are the same or similar, a dummy response associated with at least one of the pattern and the configuration information and operation information is determined as a dummy response corresponding to the transmitted data.
  • the dummy response unit 102 transmits the dummy response determined from the response rule to the data processing device 10 (CPU 11).
  • the data processing apparatus 10 receives the response from the processor-side communication control apparatus 100 even when the original response from the device 30 connected to the remote apparatus 20 cannot be received due to a poor communication state. Since the simulated dummy response is received, the operation can be continued.
  • the dummy response unit 102 records information on the transmitted data (packet) in the transmission data storage device 106 as to whether or not a response has arrived from the remote device 20 (device 30) with respect to the transmitted data. .
  • the dummy response unit 102 acquires the arrival status of the response to the transmitted data from the transmission data storage device 106, and starts the dummy response from the transmitted data for which no response has arrived. To do.
  • the dummy response unit 102 discards the real response. Thereby, it can suppress that the data processor 10 (CPU11) receives a dummy response and a real response twice, and an abnormality generate
  • the device-side communication control device 200 has the same configuration as the processor-side communication control device 100, but differs in that data transmitted from the device 30 connected to the remote device 20 to the CPU 11 of the data processing device 10 is targeted. .
  • the device-side communication control device 200 includes a system bus-side interface 201, a dummy response unit 202, a communication monitoring unit 203, a device-side bridge unit 204, a network-side interface 205, a transmission data storage device 206, and a response rule storage.
  • Device 207 is a connection unit for connecting to the system bus 22 of the remote device 20 and has a connection terminal (for example, a PCI Express terminal) according to the type of the system bus 22.
  • the network side interface 205 is a connection unit for connecting to the network 70, and has a connection mechanism (wired connection terminal or wireless connection antenna) that matches the type of the network 70.
  • the device-side bridge unit 204 forms a virtual system bus switch in cooperation with the processor-side bridge unit 104. Specifically, the device-side bridge unit 204 encapsulates data (packets) transmitted from the device 30 connected to the remote device 20 to the CPU 11 of the data processing device 10 and then sends the data to the network 70. The encapsulated data is decapsulated (decapsulated) by the processor side bridge unit 104 and reaches the CPU 11. In addition, when the device-side bridge unit 204 receives the data encapsulated by the processor-side bridge unit 104, the device-side bridge unit 204 decapsulates (decapsulates) the data and then passes the data to the remote device 20 (device 30). With such a configuration, the device 30 connected to the remote device 20 exchanges data with the CPU 11 of the data processing device 10 without performing special processing (protocol conversion or encoding) on the transmitted data. It can be performed.
  • the communication monitoring unit 203 monitors a communication state with the data processing apparatus 10 that is a communication partner of the remote device 20, and determines whether or not the communication state satisfies a predetermined standard. Specifically, the communication monitoring unit 203 calculates an index indicating a communication state between the data processing device 10 and the remote device 20 at a predetermined time interval, and performs communication when the calculated index does not satisfy a predetermined standard. It is determined that the state is bad, and the dummy response unit 202 is instructed to start a dummy response. On the other hand, the communication monitoring unit 203 determines that the communication state is good when the calculated index satisfies a predetermined criterion, and instructs the dummy response unit 202 to end the dummy response. Depending on the definition of the predetermined criterion, the processing when the criterion is satisfied and when the criterion is not satisfied may be set in reverse.
  • a response time from the data processing device 10 As an index indicating a communication state, for example, a response time from the data processing device 10, a communication speed with the data processing device 10, a packet discard rate (error rate) from the data processing device 10, a keep-alive packet by the data processing device 10
  • the presence or absence of a response to can be used. That is, when the response time is less than (or below) a predetermined value, it is determined that the communication state is good, and when the response time is greater (or more) than the predetermined value, it is determined that the communication state is bad. Alternatively, it is determined that the communication state is good when the communication speed is higher (or higher) than the predetermined value, and it is determined that the communication state is lower when the communication speed is lower (or lower) than the predetermined value.
  • the packet discard rate (error rate) is less than (or below) a predetermined value
  • it is determined that the communication state is good and when it is greater than (or above) a predetermined value, it is determined that the communication state is bad.
  • it is determined that the communication state is good when there is a response to the keep-alive packet and it is determined that the communication state is bad when there is no response.
  • a value input by the user may be used, or a value determined by the device side communication control apparatus 200 may be used.
  • the determination of the communication state is not limited to the one shown here, and any value and reference indicating the communication state can be used.
  • a predetermined response for example, acceptance of an instruction
  • a response indicating acquired data is returned.
  • an abnormal communication state that is, a bad communication state
  • a predetermined response may not be returned after data is transmitted from the remote device 20 (device 30) to the data processing device 10.
  • the device 30 may continue to wait for a response and cannot perform the next process, or the device 30 may disconnect from the data processing apparatus 10 that does not respond and cannot continue normal operation.
  • the dummy response unit 202 starts a dummy response when the communication state does not satisfy a predetermined standard. Further, the dummy response unit 202 ends the dummy response when the communication state satisfies a predetermined standard after the dummy response starts. Details of the dummy response process will be described below.
  • the dummy response unit 202 acquires data (packets) transmitted from the remote device 20 (device 30) regardless of whether the communication state is good or bad, and records it in the transmission data storage device 206.
  • data for a predetermined time used for determining the dummy response is recorded, and data exceeding the time is deleted.
  • the dummy response unit 202 transmits the transmitted data. Thereafter, the transmitted data reaches the CPU 11 of the data processing apparatus 10 via the device side bridge unit 204 and the processor side bridge unit 104.
  • the dummy response unit 202 blocks the transmitted data.
  • the dummy response unit 202 acquires a response rule recorded in advance in the response rule storage device 207.
  • the response rule is a rule that associates a pattern of data to be transmitted with a response (dummy response) corresponding to the pattern. That is, the dummy response simulates a response that should be returned to data transmitted from the remote device 20 (device 30) to the data processing device 10 (CPU 11) in a normal state.
  • the response rule is learned from normal communication by a response learning method to be described later, or is set by the user and recorded in the response rule storage device 207 in advance.
  • the dummy response unit 202 determines a dummy response associated with the pattern as a dummy response corresponding to the transmitted data.
  • the method of determining the dummy response corresponding to the data transmitted from the response rule is not limited to this, and any method can be used.
  • the similarity between the transmitted data and the response rule pattern may be calculated, and when the similarity is equal to or higher than a predetermined threshold or higher than the predetermined threshold, a dummy response associated with the pattern may be determined.
  • the dummy response unit 202 may determine a dummy response from the response rule based on data recorded in the transmission data storage device 206 (that is, data that has already been transmitted) and data that will be transmitted. Specifically, the dummy response unit 202 transmits a dummy response associated with the pattern when the response rule pattern is included in the data string obtained by combining the already transmitted data and the data to be transmitted. It is determined as a dummy response corresponding to the data to be processed. In other words, the dummy response unit 202 determines a dummy response based on data transmitted in a predetermined time range including a time when the communication state does not satisfy the predetermined standard (that is, a time when the dummy response is started). By using already transmitted data in addition to the data to be transmitted, it is possible to detect the response rule pattern even when a dummy response starts in the middle of the transmitted data.
  • the dummy response unit 202 may determine a dummy response from the response rule based on the characteristics of the transmitted data in addition to the transmitted data.
  • the characteristics of the transmitted data are information accompanying the transmitted data. For example, information indicating the addresses of the transmission source and the transmission destination, or information (TLP type, command, memory access address) based on the PCI Express packet (TLP) , I / O access address, TAG, configuration register, message, payload, etc.).
  • TLP PCI Express packet
  • I / O access address I / O access address
  • TAG configuration register
  • message payload
  • payload etc.
  • the dummy response unit 202 is a case where any pattern of the response rule is included in the transmitted data, and when the characteristic of the transmitted data and the characteristic of the data of the response rule are the same or similar, And the dummy response associated with the characteristics of the data is determined as a dummy response corresponding to the transmitted data.
  • the dummy response unit 202 may determine a dummy response from the response rule based on at least one of the configuration information and the operation information of the communication system 1 in addition to the transmitted data.
  • the current configuration information (that is, at the time of data transmission) is acquired from the configuration information storage device 50.
  • the current operation information (that is, at the time of data transmission) is acquired from the operation information storage device 60.
  • the response rule records a pattern of data to be transmitted, at least one of configuration information and operation information, and a dummy response in association with each other.
  • the dummy response unit 202 is a case where any pattern of response rules is included in the transmitted data, and at least one of the current configuration information and operation information and at least one of the response rule configuration information and operation information is If they are the same or similar, a dummy response associated with at least one of the pattern and the configuration information and operation information is determined as a dummy response corresponding to the transmitted data.
  • the dummy response unit 202 transmits the dummy response determined from the response rule to the remote device 20 (device 30). With such a configuration, even if the device 30 connected to the remote device 20 cannot receive an original response from the CPU 11 of the data processing device 10 because of a poor communication state, the device 30 from the device-side communication control device 200 Since a dummy response that simulates the response is received, the operation can be continued.
  • the dummy response unit 202 records information on the transmitted data (packet) in the transmission data storage device 206 as to whether a response has arrived from the data processing device 10 (CPU 11) for the transmitted data. .
  • the dummy response unit 202 acquires the arrival status of the response to the transmitted data from the transmission data storage device 206, and starts the dummy response from the transmitted data for which no response has arrived. To do.
  • the dummy response unit 202 discards the real response. Thereby, it can suppress that the remote apparatus 20 (device 30) receives a dummy response and a real response twice, and an error generate
  • the processor side communication control apparatus 100 and the device side communication control apparatus 200 are not limited to the specific configuration shown in FIG.
  • the processor-side communication control device 100 and the device-side communication control device 200 are not limited to one device, but may be configured by connecting two or more physically separated devices in a wired or wireless manner.
  • Each unit included in the processor side communication control apparatus 100 and the device side communication control apparatus 200 may be realized by a processor that executes a program, or may be realized by an electric circuit configuration.
  • the electric circuit configuration is a term that conceptually includes a single device, a plurality of devices, a chipset, or a cloud.
  • processor side communication control apparatus 100 and the device side communication control apparatus 200 may be provided in the SaaS format. That is, at least a part of functions for realizing the processor side communication control apparatus 100 and the device side communication control apparatus 200 may be executed by software executed via a network.
  • FIG. 4 is a view showing a flowchart of a communication control method (dummy response method) executed by the processor side communication control apparatus 100 and the device side communication control apparatus 200 according to the present embodiment.
  • the flowchart of FIG. 4 is started in response to the start of communication from one of the data processing device 10 and the remote device 20 to the other.
  • the communication control method shown in FIG. 4 is executed by the processor-side communication control device 100 provided in the data processing device 10 that is the transmission source.
  • the communication control method shown in FIG. 4 is executed by the device-side communication control device 200 provided in the remote device 20 that is the transmission source. Further, the communication control method of FIG. 4 may be executed in parallel by the processor side communication control apparatus 100 and the device side communication control apparatus 200.
  • the communication monitoring units 103 and 203 determine the communication state between the data processing device 10 and the remote device 20 (step S101). When the communication state satisfies a predetermined standard (YES in step S102), the communication monitoring units 103 and 203 determine that the communication state is good and repeat step S101. The data transmission is continued, and the transmitted data is recorded in the transmission data storage devices 106 and 206.
  • the communication monitoring units 103 and 203 determine that the communication state is bad and instruct the dummy response units 102 and 202 to start a dummy response. (Step S103).
  • the dummy response units 102 and 202 acquire data transmitted from the data transmission source (the data processing device 10 or the remote device 20) and acquire response rules from the response rule storage devices 107 and 207 (step S104). ). At this time, the dummy response units 102 and 202 block data transmission. Further, in the case where data already transmitted is used for determining the dummy response, the dummy response units 102 and 202 acquire the data already transmitted from the transmission data storage devices 106 and 206. Further, when using the characteristics of the data to be transmitted for determining the dummy response, the dummy response units 102 and 202 acquire the characteristics from the transmitted data.
  • the dummy response units 102 and 202 store the current configuration information and the operation information (at the time of data transmission) as the configuration information storage device 50 and the operation information storage device 60. Get from.
  • the dummy response units 102 and 202 determine the content of the dummy response corresponding to the data transmitted from the response rule acquired in step S104, and transmit it to the data transmission source (data processing device 10 or remote device 20). (Step S105).
  • the dummy response units 102 and 202 add these information in addition to the transmitted data and response rules. The content of the dummy response is determined based on the above.
  • the communication monitoring units 103 and 203 determine again the communication state between the data processing device 10 and the remote device 20 (step S106).
  • the determination of the communication state in step S106 is performed after the dummy response in steps S104 to S105, but steps S104 to S105 and step S106 may be performed in parallel.
  • the communication monitoring units 103 and 203 determine that the communication state is bad, and return to step S104 to continue the dummy response.
  • step S107 If the communication state satisfies a predetermined standard (YES in step S107), the communication monitoring units 103 and 203 determine that the communication state is good (recovered), and end the dummy response to the dummy response units 102 and 202. An instruction is given (step S108).
  • step S109 If communication from one of the data processing device 10 and the remote device 20 to the other has not ended (NO in step S109), the process returns to step S101 and is repeated. When communication from one of the data processing device 10 and the remote device 20 to the other ends (YES in step S109), the processing ends. In the flowchart of FIG. 4, the determination of the end of communication in step S109 is performed after step S108, but may be performed at any timing among steps S101 to S108.
  • FIG. 5 is a schematic configuration diagram of the response learning device 40 according to the present embodiment.
  • the schematic configuration diagram of the response learning device 40 is a computer, and includes a CPU 41, a memory 43, a storage device 44, and an interface 45.
  • the CPU 41, the memory 43, the storage device 44, and the interface 45 are connected by a system bus 42.
  • the response learning device 40 may be an independent device, or may be configured integrally with other devices.
  • the configurations of the CPU 41, the system bus 42, the memory 43, the storage device 44, and the interface 45 are the same as those of the CPU 11, the system bus 12, the memory 13, the storage device 14, and the interface 15 in FIG.
  • the interface 45 is connected to the network 70.
  • FIG. 6 is a view showing a flowchart of a response learning method executed by the response learning device 40 according to the present embodiment.
  • the CPU 41 of the response learning device 40 executes the response learning method shown in the flowchart of FIG. 6 by executing the program recorded in the storage device 44.
  • the flowchart in FIG. 6 is started when a start instruction is given by the user, for example. Alternatively, the flowchart of FIG. 6 may be automatically started when communication between the data processing device 10 and the remote device 20 is started.
  • the CPU 41 obtains data transmitted from a data transmission source (one of the data processing device 10 and the remote device 20), and from the data transmission destination (the other of the data processing device 10 and the remote device 20). A response to the data is acquired (step S201). Moreover, when using the characteristic of the data transmitted for the production
  • the CPU 41 performs learning from the transmitted data acquired in step S201 and its response (step S202). Specifically, the CPU 41 generates a pattern of transmitted data from the transmitted data acquired in step S201. For example, in the pattern of data to be transmitted, a common part of a plurality of data to be transmitted corresponding to the same response is extracted (that is, a variable part such as a time, a source address, a destination address, etc. is excluded). Generated by. Then, the CPU 41 generates a response rule by associating the generated pattern of transmitted data with a response corresponding to the transmitted data, and transmits the response rule to the processor-side communication control device 100 and the device-side communication control device 200. (Step S203).
  • the CPU 41 when using the characteristics of the data to be transmitted for generating the response rule, corresponds to the generated pattern of transmitted data, the characteristics of the transmitted data, and the transmitted data. Generate response rules by associating responses. Further, when the configuration information and the operation information are used for generating the response rule, the CPU 41 generates a pattern of the generated transmitted data, the system configuration information and the operation information, and a response corresponding to the transmitted data. A response rule is generated by associating with.
  • the processor side communication control device 100 and the device side communication control device 200 record the response rules received in step S203 in the response rule storage devices 107 and 207, respectively.
  • the specific response learning method is not limited to the one shown here, and any method capable of generating dummy responses by learning actual transmission data and responses can be used.
  • step S204 If the communication between the data processing device 10 and the remote device 20 has not ended (NO in step S204), the process returns to step S201 and is repeated. When communication between the data processing device 10 and the remote device 20 is completed (YES in step S204), the processing is terminated.
  • the processor side communication control apparatus 100 or the device side communication control apparatus 200 A dummy response corresponding to the data is sent to the data processing apparatus 10 or the remote apparatus 20 that is the data transmission source. Therefore, even if the communication state between the data processing device 10 and the remote device 20 deteriorates, the communication system 1 can be suppressed from being in an abnormal state, and the operation of the communication system 1 can be continued.
  • the communication control devices 100 and 200 are provided inside the data processing device 10 and the remote device 20, but in this embodiment, they are provided outside the data processing device 10 and the remote device 20.
  • Other configurations and processes are the same as those in the first embodiment.
  • FIG. 7 is a schematic configuration diagram of the data processing device 10 and the remote device 20 according to the present embodiment.
  • the processor-side communication control device 100 is connected to the outside of the data processing device 10 via the interface 15, and data processing is performed when the predetermined condition described in the first embodiment is satisfied.
  • a dummy response is transmitted to the device 10.
  • the device-side communication control device 200 is connected to the outside of the remote device 20 via the interface 25, and transmits a dummy response to the remote device 20 when the predetermined condition described in the first embodiment is satisfied.
  • the processor side communication control apparatus 100 and the device side communication control apparatus 200 are connected via a network 70.
  • the communication system 1 can achieve the same effects as those of the first embodiment. Although a dummy response cannot be made when a failure occurs between the interface 15 and the processor side communication control apparatus 100 or between the interface 25 and the device side communication control apparatus 200, the processor side communication control apparatus 100 and The device side communication control device 200 can be easily added to the data processing device 10 and the remote device 20.
  • the communication control devices 100 and 200 are different devices from the response learning device 40, but in this embodiment, the response learning device 40 functions as the communication control devices 100 and 200.
  • Other configurations and processes are the same as those in the first embodiment.
  • FIG. 8 is a schematic configuration diagram of the data processing device 10 and the remote device 20 according to the present embodiment. Unlike the configuration of FIG. 2, the processor side communication control apparatus 100 and the device side communication control apparatus 200 are omitted.
  • the response learning device 40 according to the present embodiment has a configuration for executing the response learning method described with reference to FIGS. 5 to 6 and executes the communication control method (dummy response method) described with reference to FIGS.
  • the structure to be provided is provided. That is, the response learning device 40 according to the present embodiment can execute the functions of the processor side communication control device 100 and the device side communication control device 200.
  • the response learning device 40 makes a dummy response to the data processing device 10 and also makes a dummy response to the remote device 20. That is, the response learning device 40 functions as the communication control devices 100 and 200 corresponding to the transmission source both when the data processing device 10 is the data transmission source and when the remote device 20 is the data transmission source. .
  • the conditions for performing the dummy response and the response rules for generating the dummy response are the same as in the first embodiment.
  • the response learning device 40 may implement the functions of the components of the processor-side communication control device 100 and the device-side communication control device 200 shown in FIG. 3 by the CPU 41 executing a program, or the processor-side communication shown in FIG. You may provide the electric circuit structure which mounts the function of each part of the control apparatus 100 and the device side communication control apparatus 200. FIG. With such a configuration, the response learning device 40 can execute both the response learning method and the communication control method in the first embodiment.
  • the communication system 1 can achieve the same effects as those of the first embodiment. Although a dummy response cannot be performed when a failure occurs between the interface 15 and the response learning device 40 or between the interface 25 and the response learning device 40, the response learning method and communication can be performed only by the response learning device 40. Since both control methods can be executed, it can be easily introduced at low cost.
  • FIG. 9 is a schematic configuration diagram of the communication control devices 100 and 200 according to the above-described embodiments.
  • FIG. 9 shows a configuration example for the communication control devices 100 and 200 to function as devices that enable continuous operation of the system even when the communication state deteriorates.
  • Communication control devices 100 and 200 include communication monitoring units 103 and 203 that determine a communication state between a data processing device and a remote device that communicates with the data processing device via a network, and the data processing device and the remote device. When data is transmitted from one to the other, if the communication state does not satisfy a predetermined standard, dummy response units 102 and 202 (responses) that respond to the data to the data transmission source Part).
  • a recording medium that stores a program (more specifically, a communication control program or a response learning program that causes a computer to execute the processes illustrated in FIGS. 4 and 6) that operates the configuration of the embodiment so as to realize the functions of the embodiment described above.
  • the processing method of recording the program on the recording medium, reading the program recorded on the recording medium as a code, and executing the program on a computer is also included in the category of each embodiment. That is, a computer-readable recording medium is also included in the scope of each embodiment.
  • the program itself is included in each embodiment.
  • the recording medium for example, a floppy (registered trademark) disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a magnetic tape, a nonvolatile memory card, and a ROM can be used.
  • the embodiment is not limited to the processing executed by a single program recorded in the recording medium, and the embodiments that execute processing by operating on the OS in cooperation with other software and the function of the expansion board are also described in each embodiment. Included in the category.
  • a communication control method comprising:
  • the communication control device performs the response to the transmission source and blocks transmission of the data to a transmission destination of the data. Communication control method.
  • the communication control device performs the response based on the data transmitted in a predetermined time range including a time when the communication state no longer satisfies the predetermined standard.
  • the communication control method according to appendix 1 or 2.
  • Appendix 4 The communication control method according to any one of appendices 1 to 3, wherein, in the step of performing the response, the communication control device performs the response according to a rule that associates the data and the response.
  • the rule associates, in addition to the data, at least one of configuration information of a system including the data processing device and the remote device, operation information of the system, and characteristics of the data with the response.
  • Appendix 6 The communication control method according to appendix 4 or 5, further comprising the step of learning the rule from communication between the data processing device and the remote device when the communication state satisfies the predetermined criterion. .
  • the step of performing the response performs the response when at least one of a response time, a speed, and an error rate of communication between the data processing device and the remote device does not satisfy the predetermined criterion.
  • the communication control method according to any one of appendices 1 to 6.
  • Appendix 8 An input / output device controlled via the network by the data processing device is connected to the remote device, The communication control method according to any one of appendices 1 to 7, wherein the data is transmitted and received between a processor of the data processing device and the input / output device.
  • Appendix 10 The communication control method according to any one of appendices 1 to 8, wherein the communication control device is provided in the network between the data processing device and the remote device.
  • a communication monitoring unit for determining a communication state between a data processing device and a remote device communicating with the data processing device via a network; When data is transmitted from one of the data processing device and the remote device to the other, if the communication state does not satisfy a predetermined standard, a response to the data is made to the data transmission source A response unit;
  • a communication control device comprising:
  • Data processing device 20 Remote device 100, 200 Communication control device 102, 202 Dummy response unit 103, 203 Communication monitoring unit

Abstract

A communication control apparatus according to one embodiment of the present invention is provided with: a communication monitoring unit that determines the state of communication between a data processing device and a remote device that communicate with the data processing device via a network; and a response unit that, when data is transmitted from one of the data processing device and the remote device to the other, issues, to the data transmission source, a response to the data in a case where the state of communication does not satisfy a prescribed standard.

Description

通信制御方法、記録媒体および通信制御装置COMMUNICATION CONTROL METHOD, RECORDING MEDIUM, AND COMMUNICATION CONTROL DEVICE
 本発明は、通信制御方法、プログラムおよび装置に関し、特にデータ処理装置と入出力デバイスが接続されるリモート装置との間の通信を制御する通信制御方法、記録媒体および通信制御装置に関する。 The present invention relates to a communication control method, a program, and an apparatus, and more particularly, to a communication control method, a recording medium, and a communication control apparatus that control communication between a data processing apparatus and a remote apparatus to which an input / output device is connected.
 コンピュータには、内部のシステムバスを介して、ハードディスクドライブ、グラフィックボード等、様々な入出力デバイスが接続される。コンピュータに接続可能なデバイスの数は、該コンピュータの筐体サイズや電源容量によって物理的に制限される。 Various input / output devices such as hard disk drives and graphic boards are connected to the computer via an internal system bus. The number of devices that can be connected to a computer is physically limited by the size of the casing of the computer and the power supply capacity.
 このようなデバイス接続の制限を解消するため、近年、コンピュータ内部のシステムバスをコンピュータの外部に延長する装置が開発された。このような技術として、特許文献1には、データ処理装置と、デバイスに接続されたリモート装置とを備えるシステムであって、該データ処理装置から該リモート装置へ該デバイスに対する命令をカプセル化してネットワークを介して送信するシステムが開示されている。このようなシステムにおいては、リモート装置に接続されたデバイスはデータ処理装置の内部のシステムバスに接続されたデバイスのように制御可能であるため、データ処理装置へのコンピュータ資源の拡張を柔軟かつ容易に行うことができる。 In recent years, devices that extend the system bus inside the computer to the outside of the computer have been developed in order to eliminate such device connection restrictions. As such a technique, Patent Document 1 discloses a system including a data processing device and a remote device connected to the device, and encapsulates instructions for the device from the data processing device to the remote device. A system for transmitting via is disclosed. In such a system, since the device connected to the remote device can be controlled like a device connected to the system bus inside the data processing device, the expansion of computer resources to the data processing device is flexible and easy. Can be done.
国際公開第2015/145983号International Publication No. 2015/145983
 特許文献1に記載の技術において、ネットワーク上でデータ処理装置とリモート装置との間の通信状態が悪化することにより、想定しない通信断や再接続が発生してデータ処理装置を含むシステムが異常な状態となる場合がある。例えばデータ処理装置のシステムバスに接続されているデバイスが意図せず切断された場合には、システムは正常な運用が行えなくなるか、運用を行うとしても復帰処理が必要になるという問題があった。復帰処理を行うには利用者が手動でシステムをリセットする必要があるため、システムの継続運用が困難となる。 In the technology described in Patent Document 1, the communication state between the data processing device and the remote device is deteriorated on the network, so that an unexpected communication disconnection or reconnection occurs and the system including the data processing device is abnormal. It may be in a state. For example, when a device connected to the system bus of a data processing device is disconnected unintentionally, there is a problem that the system cannot operate normally or a recovery process is required even if it is operated. . Since the user needs to manually reset the system to perform the restoration process, it is difficult to continue the system operation.
 本発明は、上述の問題に鑑みて行われたものであって、データ処理装置およびリモート装置の間の通信状態が悪化した場合であっても、システムの継続運用を可能にする通信制御方法、プログラムおよび装置を提供することを目的とする。 The present invention has been made in view of the above-described problems, and a communication control method that enables continuous operation of a system even when the communication state between a data processing device and a remote device deteriorates, An object is to provide a program and apparatus.
 本発明の第1の態様は、通信制御方法であって、データ処理装置、およびネットワークを介して前記データ処理装置と通信するリモート装置の間の通信状態を判定するステップと、前記データ処理装置および前記リモート装置のうち一方から他方へデータが送信される際に、前記通信状態が所定の基準を満たさない場合に、前記データの送信元に対応する通信制御装置から前記送信元に対して、前記データに対する応答を行うステップと、を備える。 A first aspect of the present invention is a communication control method, comprising: determining a communication state between a data processing device and a remote device that communicates with the data processing device via a network; and the data processing device and When data is transmitted from one of the remote devices to the other, if the communication state does not satisfy a predetermined standard, the communication control device corresponding to the data transmission source, to the transmission source, Responding to the data.
 本発明の第2の態様は、通信制御プログラムが記録された記録媒体であって、コンピュータに、データ処理装置、およびネットワークを介して前記データ処理装置と通信するリモート装置の間の通信状態を判定するステップと、前記データ処理装置および前記リモート装置のうち一方から他方へデータが送信される際に、前記通信状態が所定の基準を満たさない場合に、前記データの送信元に対応する通信制御装置から前記送信元に対して、前記データに対する応答を行うステップと、を実行させる。 According to a second aspect of the present invention, there is provided a recording medium having a communication control program recorded thereon, wherein a communication state between a data processing device and a remote device communicating with the data processing device via a network is determined by a computer. And a communication control device corresponding to the data transmission source when data is transmitted from one of the data processing device and the remote device to the other when the communication state does not satisfy a predetermined criterion. And a step of responding to the data to the transmission source.
 本発明の第3の態様は、通信制御装置であって、データ処理装置、およびネットワークを介して前記データ処理装置と通信するリモート装置の間の通信状態を判定する通信監視部と、前記データ処理装置および前記リモート装置のうち一方から他方へデータが送信される際に、前記通信状態が所定の基準を満たさない場合に、前記データの送信元に対して、前記データに対する応答を行う応答部と、を備える。 According to a third aspect of the present invention, there is provided a communication control device, a communication monitoring unit for determining a communication state between a data processing device and a remote device communicating with the data processing device via a network, and the data processing A response unit configured to respond to the data with respect to a transmission source of the data when the communication state does not satisfy a predetermined standard when data is transmitted from one of the device and the remote device to the other; .
 本発明によれば、データ処理装置およびリモート装置の間の通信状態が悪化した場合であっても、通信制御装置からデータの送信元に対して該データに対する応答を行うため、システムの継続運用が可能である。 According to the present invention, even when the communication state between the data processing device and the remote device deteriorates, the communication control device makes a response to the data to the data transmission source. Is possible.
第1の実施形態に係る通信システムの模式図である。1 is a schematic diagram of a communication system according to a first embodiment. 第1の実施形態に係るデータ処理装置およびリモート装置の概略構成図である。1 is a schematic configuration diagram of a data processing device and a remote device according to a first embodiment. 第1の実施形態に係るプロセッサ側通信制御装置およびデバイス側通信制御装置のブロック図である。It is a block diagram of the processor side communication control apparatus and device side communication control apparatus which concern on 1st Embodiment. 第1の実施形態に係るプロセッサ側通信制御装置およびデバイス側通信制御装置によって実行される通信制御方法のフローチャートを示す図である。It is a figure which shows the flowchart of the communication control method performed by the processor side communication control apparatus and device side communication control apparatus which concern on 1st Embodiment. 第1の実施形態に係る応答学習装置の概略構成図である。It is a schematic block diagram of the response learning apparatus which concerns on 1st Embodiment. 第1の実施形態に係る応答学習装置によって実行される応答学習方法のフローチャートを示す図である。It is a figure which shows the flowchart of the response learning method performed by the response learning apparatus which concerns on 1st Embodiment. 第2の実施形態に係るデータ処理装置およびリモート装置の概略構成図である。It is a schematic block diagram of the data processor and remote device which concern on 2nd Embodiment. 第3の実施形態に係るデータ処理装置およびリモート装置の概略構成図である。It is a schematic block diagram of the data processor and remote apparatus which concern on 3rd Embodiment. 各実施形態に係る通信制御装置の概略構成図である。It is a schematic block diagram of the communication control apparatus which concerns on each embodiment.
 以下、図面を参照して、本発明の実施形態を説明するが、本発明は本実施形態に限定されるものではない。なお、以下で説明する図面で、同機能を有するものは同一符号を付け、その繰り返しの説明は省略することもある。 Hereinafter, embodiments of the present invention will be described with reference to the drawings, but the present invention is not limited to the embodiments. In the drawings described below, components having the same function are denoted by the same reference numerals, and repeated description thereof may be omitted.
(第1の実施形態)
 図1は、本実施形態に係る通信システム1の模式図である。通信システム1は、データ処理装置10、リモート装置20、および応答学習装置40を備える。データ処理装置10、リモート装置20、および応答学習装置40は、インターネット等のネットワーク70を介して、有線接続又は無線接続によって接続される。図1の構成においてデータ処理装置10およびリモート装置20はそれぞれ1つずつ設けられているが、それぞれ複数設けられてもよい。通信システム1は、その他のサーバ、端末、記憶装置等の任意の機器を含んでもよい。
(First embodiment)
FIG. 1 is a schematic diagram of a communication system 1 according to the present embodiment. The communication system 1 includes a data processing device 10, a remote device 20, and a response learning device 40. The data processing device 10, the remote device 20, and the response learning device 40 are connected by a wired connection or a wireless connection via a network 70 such as the Internet. In the configuration of FIG. 1, one data processing device 10 and one remote device 20 are provided, but a plurality of data processing devices 10 and remote devices 20 may be provided. The communication system 1 may include other devices such as other servers, terminals, and storage devices.
 データ処理装置10は、利用者による指示を受け付け、該指示に従ってプロセッサによって所定の処理を行い、該処理に応じた出力を行う装置(コンピュータ)である。 The data processing apparatus 10 is an apparatus (computer) that receives an instruction from a user, performs a predetermined process by a processor in accordance with the instruction, and outputs in accordance with the process.
 リモート装置20は、I/O(Input/Output)接続装置とも呼ばれ、データ処理装置10にネットワーク70を介して接続される装置である。リモート装置20には、データ処理装置10によって利用されるデバイス30(入出力デバイス、I/Oデバイスともいう)が接続される。デバイス30は、記憶装置(例えばハードディスクドライブ)、画像処理装置(例えばグラフィックボード)、USB(Universal Serial Bus)機器等、情報の処理又は入出力を行う任意の装置である。 The remote device 20 is also called an I / O (Input / Output) connection device, and is a device connected to the data processing device 10 via the network 70. A device 30 (also referred to as an input / output device or an I / O device) used by the data processing apparatus 10 is connected to the remote device 20. The device 30 is an arbitrary device that processes or inputs / outputs information, such as a storage device (for example, a hard disk drive), an image processing device (for example, a graphic board), or a USB (Universal Serial Bus) device.
 データ処理装置10とリモート装置20との間はシステムバスの延長として接続されている。そのため、データ処理装置10は、リモート装置20に接続されるデバイス30を、データ処理装置10内部のシステムバスに直接接続されているように扱うことができる。 The data processing device 10 and the remote device 20 are connected as an extension of the system bus. Therefore, the data processing apparatus 10 can handle the device 30 connected to the remote apparatus 20 as if it is directly connected to the system bus inside the data processing apparatus 10.
 応答学習装置40は、データ処理装置10およびリモート装置20の間の通信を学習し、後述の応答ルールを生成する装置である。 The response learning device 40 is a device that learns communication between the data processing device 10 and the remote device 20 and generates a response rule described later.
 構成情報記憶装置50は、通信システム1の機器構成を示す構成情報を記録する記憶装置である。構成情報は、例えばリモート装置20に接続されているデバイス30の種類(記憶装置、画像処理装置等)を示す情報である。構成情報記憶装置50には、現在の構成情報が随時記録される。稼動情報記憶装置60は、通信システム1がどのように稼動しているかを示す稼動情報を記録する記憶装置である。稼動情報は、例えば通信システム1を含む製造システムにおいて製造が行われている製品を示す情報である。稼動情報記憶装置60には、現在の稼動情報が随時記録される。本実施形態では構成情報記憶装置50および稼動情報記憶装置60はネットワーク70に接続されているが、データ処理装置10、リモート装置20および応答学習装置40のいずれかに内蔵されてもよい。 The configuration information storage device 50 is a storage device that records configuration information indicating the device configuration of the communication system 1. The configuration information is information indicating the type (storage device, image processing device, etc.) of the device 30 connected to the remote device 20, for example. In the configuration information storage device 50, the current configuration information is recorded as needed. The operation information storage device 60 is a storage device that records operation information indicating how the communication system 1 is operating. The operation information is information indicating a product that is manufactured in a manufacturing system including the communication system 1, for example. In the operation information storage device 60, current operation information is recorded at any time. In the present embodiment, the configuration information storage device 50 and the operation information storage device 60 are connected to the network 70, but may be incorporated in any of the data processing device 10, the remote device 20, and the response learning device 40.
 図2は、本実施形態に係るデータ処理装置10およびリモート装置20の概略構成図である。データ処理装置10は、コンピュータであり、CPU11(Central Processing Unit)と、メモリ13と、記憶装置14と、インタフェース15と、プロセッサ側通信制御装置100とを備える。CPU11、メモリ13、記憶装置14、インタフェース15およびプロセッサ側通信制御装置100は、システムバス12によって接続される。プロセッサ側通信制御装置100は、データ処理装置10に固定されて設けられてもよく、あるいはデータ処理装置10から着脱可能に設けられてもよい。データ処理装置10は独立した装置でよく、あるいは他の装置と一体に構成されてよい。 FIG. 2 is a schematic configuration diagram of the data processing device 10 and the remote device 20 according to the present embodiment. The data processing device 10 is a computer, and includes a CPU 11 (Central Processing Unit), a memory 13, a storage device 14, an interface 15, and a processor-side communication control device 100. The CPU 11, the memory 13, the storage device 14, the interface 15, and the processor side communication control device 100 are connected by a system bus 12. The processor-side communication control device 100 may be provided fixed to the data processing device 10 or may be provided detachably from the data processing device 10. The data processing device 10 may be an independent device, or may be integrated with other devices.
 システムバス12(データバス、バスともいう)は、コンピュータ内部でデータを転送する経路である。システムバス12として、ISA、PCI、PCIExpress等の任意の規格が用いられる。 The system bus 12 (also referred to as a data bus or a bus) is a path for transferring data inside the computer. As the system bus 12, any standard such as ISA, PCI, or PCI Express is used.
 インタフェース15は、外部機器に接続するための接続部である。インタフェース15は、接続に必要な電気回路、接続端子等を含む。インタフェース15は、CPU11からの信号に従って、接続された外部機器等との間でデータの授受を行う。 The interface 15 is a connection unit for connecting to an external device. The interface 15 includes an electric circuit necessary for connection, a connection terminal, and the like. The interface 15 exchanges data with a connected external device or the like according to a signal from the CPU 11.
 記憶装置14は、データ処理装置10が実行するプログラムや、プログラムによる処理結果のデータ等を記録する。記憶装置14は、読み取り専用のROM(Read Only Memory)や、読み書き可能のハードディスクドライブ又はフラッシュメモリ等を含む。また、記憶装置14は、CD-ROM等のコンピュータ読取可能な可搬記憶媒体を含んでもよい。メモリ13は、CPU11が処理中のデータや記憶装置14から読み出されたプログラムおよびデータを一時的に記録するRAM(Random Access Memory)等を含む。 The storage device 14 records a program executed by the data processing device 10, data of a processing result by the program, and the like. The storage device 14 includes a read-only ROM (Read Only Memory), a readable / writable hard disk drive, a flash memory, or the like. The storage device 14 may include a computer-readable portable storage medium such as a CD-ROM. The memory 13 includes a RAM (Random Access Memory) that temporarily records data being processed by the CPU 11, a program read from the storage device 14, and data.
 CPU11は、処理に用いる一時的なデータをメモリ13に一時的に記録し、記憶装置14に記録されたプログラムを読み出し、該プログラムに従って該一時的なデータに対して種々の演算、制御、判別などの処理動作を実行するプロセッサである。また、CPU11は、記憶装置14に処理結果のデータを記録し、またインタフェース15を介して処理結果のデータを外部に送信する。 The CPU 11 temporarily records temporary data used for processing in the memory 13, reads a program recorded in the storage device 14, and performs various calculations, control, discrimination, etc. on the temporary data according to the program. It is a processor which performs the processing operation of. Further, the CPU 11 records the processing result data in the storage device 14 and transmits the processing result data to the outside via the interface 15.
 リモート装置20は、インタフェース25と、デバイス側通信制御装置200とを備える。インタフェース25およびデバイス側通信制御装置200は、システムバス22によって接続される。デバイス側通信制御装置200は、リモート装置20に固定されて設けられてもよく、あるいはリモート装置20から着脱可能に設けられてもよい。リモート装置20は独立した装置でよく、あるいは他の装置と一体に構成されてよい。 The remote device 20 includes an interface 25 and a device side communication control device 200. The interface 25 and the device side communication control apparatus 200 are connected by a system bus 22. The device-side communication control device 200 may be fixed to the remote device 20 or may be detachable from the remote device 20. The remote device 20 may be an independent device or may be integrated with other devices.
 システムバス22およびインタフェース25の構成は、システムバス12およびインタフェース15と同様である。インタフェース25は、データ処理装置10によって利用されるデバイス30に接続される。インタフェース25に接続されるデバイス30は、リモート装置20の筐体の外部および内部のどちらに配置されてもよい。 The configuration of the system bus 22 and the interface 25 is the same as that of the system bus 12 and the interface 15. The interface 25 is connected to the device 30 used by the data processing apparatus 10. The device 30 connected to the interface 25 may be disposed either outside or inside the housing of the remote device 20.
 プロセッサ側通信制御装置100およびデバイス側通信制御装置200には、それぞれ同一ネットワーク70で他のプロセッサ側通信制御装置100およびデバイス側通信制御装置200と重ならない固有の識別子を有する。同一の識別子を有するプロセッサ側通信制御装置100およびデバイス側通信制御装置200の組は、ネットワーク70を介して仮想的なシステムバススイッチを構成し、データ処理装置10のシステムバス12およびリモート装置20のシステムバス22を接続する。このような構成により、データ処理装置10のCPU11は、リモート装置20に接続されているデバイス30に対して、さもデータ処理装置10のシステムバス12に直接接続されているようにデータの送受信を行うことができる。プロセッサ側通信制御装置100およびデバイス側通信制御装置200の具体的な構成については図3を用いて後述する。 The processor-side communication control apparatus 100 and the device-side communication control apparatus 200 have unique identifiers that do not overlap with other processor-side communication control apparatuses 100 and device-side communication control apparatuses 200 in the same network 70, respectively. A set of the processor-side communication control device 100 and the device-side communication control device 200 having the same identifier constitutes a virtual system bus switch via the network 70, and the system bus 12 of the data processing device 10 and the remote device 20 Connect the system bus 22. With such a configuration, the CPU 11 of the data processing apparatus 10 transmits / receives data to / from the device 30 connected to the remote apparatus 20 so as to be directly connected to the system bus 12 of the data processing apparatus 10. be able to. Specific configurations of the processor side communication control apparatus 100 and the device side communication control apparatus 200 will be described later with reference to FIG.
 データ処理装置10およびリモート装置20は、図2に示す具体的な構成に限定されない。データ処理装置10およびリモート装置20は、それぞれ1つの装置に限られず、2つ以上の物理的に分離した装置が有線又は無線で接続されることにより構成されていてもよい。データ処理装置10およびリモート装置20に含まれる各部は、それぞれ電気回路構成により実現されていてもよい。ここで、電気回路構成とは、単一のデバイス、複数のデバイス、チップセット又はクラウドを概念的に含む文言である。 The data processing device 10 and the remote device 20 are not limited to the specific configuration shown in FIG. Each of the data processing device 10 and the remote device 20 is not limited to one device, and may be configured by connecting two or more physically separated devices in a wired or wireless manner. Each unit included in the data processing device 10 and the remote device 20 may be realized by an electric circuit configuration. Here, the electric circuit configuration is a term that conceptually includes a single device, a plurality of devices, a chipset, or a cloud.
 また、データ処理装置10およびリモート装置20の少なくとも一部がSaaS(Software as a Service)形式で提供されてよい。すなわち、データ処理装置10およびリモート装置20を実現するための機能の少なくとも一部が、ネットワーク経由で実行されるソフトウェアによって実行されてよい。 In addition, at least a part of the data processing device 10 and the remote device 20 may be provided in the SaaS (Software as a Service) format. That is, at least a part of functions for realizing the data processing device 10 and the remote device 20 may be executed by software executed via a network.
 図3は、本実施形態に係るプロセッサ側通信制御装置100およびデバイス側通信制御装置200のブロック図である。図3において、ブロックを結ぶ線は主なデータの流れを示しており、図3に示したもの以外のデータの流れがあってよい。図3において、各ブロックはハードウェア(装置)単位の構成ではなく、機能単位の構成を示している。そのため、図3に示すブロックは単一の装置内に実装されてよく、あるいは複数の装置内に別れて実装されてよい。 FIG. 3 is a block diagram of the processor side communication control apparatus 100 and the device side communication control apparatus 200 according to the present embodiment. In FIG. 3, the lines connecting the blocks indicate the main data flow, and there may be data flows other than those shown in FIG. In FIG. 3, each block shows a functional unit configuration, not a hardware (device) unit configuration. Therefore, the blocks shown in FIG. 3 may be implemented in a single device, or may be separately implemented in a plurality of devices.
 プロセッサ側通信制御装置100は、システムバス側インタフェース101と、ダミー応答部102と、通信監視部103と、プロセッサ側ブリッジ部104と、ネットワーク側インタフェース105と、送信データ記憶装置106と、応答ルール記憶装置107とを備える。システムバス側インタフェース101は、データ処理装置10のシステムバス12に接続するための接続部であり、システムバス12の種類に合わせた接続端子(例えばPCIExpress端子)を有する。ネットワーク側インタフェース105は、ネットワーク70に接続するための接続部であり、ネットワーク70の種類に合わせた接続機構(有線接続端子又は無線接続アンテナ)を有する。 The processor-side communication control device 100 includes a system bus-side interface 101, a dummy response unit 102, a communication monitoring unit 103, a processor-side bridge unit 104, a network-side interface 105, a transmission data storage device 106, and a response rule storage. Device 107. The system bus side interface 101 is a connection unit for connecting to the system bus 12 of the data processing apparatus 10 and has a connection terminal (for example, a PCI Express terminal) according to the type of the system bus 12. The network side interface 105 is a connection unit for connecting to the network 70, and has a connection mechanism (wired connection terminal or wireless connection antenna) according to the type of the network 70.
 プロセッサ側ブリッジ部104は、デバイス側ブリッジ部204と協働して仮想的なシステムバススイッチを構成する。具体的には、プロセッサ側ブリッジ部104は、データ処理装置10(CPU11)からリモート装置20に接続されたデバイス30に向けて送信されるデータ(パケット)をカプセル化してからネットワーク70に送出する。カプセル化されたデータは、デバイス側ブリッジ部204によってデカプセル化(カプセル化を解除)されてデバイス30に到達する。また、プロセッサ側ブリッジ部104は、デバイス側ブリッジ部204によってカプセル化されたデータを受信すると、該データをデカプセル化(カプセル化を解除)してからデータ処理装置10(CPU11)へ渡す。このような構成により、データ処理装置10のCPU11は、送信されるデータに特別な処理(プロトコル変換や符号化)を行うことなく、リモート装置20に接続されたデバイス30との間でデータの授受を行うことができる。 The processor side bridge unit 104 configures a virtual system bus switch in cooperation with the device side bridge unit 204. Specifically, the processor-side bridge unit 104 encapsulates data (packets) transmitted from the data processing device 10 (CPU 11) to the device 30 connected to the remote device 20 and then transmits the data (packet) to the network 70. The encapsulated data is decapsulated (decapsulated) by the device side bridge unit 204 and reaches the device 30. In addition, when the processor side bridge unit 104 receives the data encapsulated by the device side bridge unit 204, the processor side bridge unit 104 decapsulates the data (decapsulation) and then passes the data to the data processing apparatus 10 (CPU 11). With such a configuration, the CPU 11 of the data processing apparatus 10 exchanges data with the device 30 connected to the remote apparatus 20 without performing special processing (protocol conversion or encoding) on the transmitted data. It can be performed.
 通信監視部103は、データ処理装置10の通信相手であるリモート装置20との通信状態を監視し、通信状態が所定の基準を満たすか否かを判定する。具体的には、通信監視部103は、所定の時間間隔でデータ処理装置10およびリモート装置20の間の通信状態を示す指標を算出し、算出された指標が所定の基準を満たさない場合に通信状態が悪いと判定し、ダミー応答部102へダミー応答を開始する指示を行う。一方、通信監視部103は、算出された指標が所定の基準を満たす場合に通信状態が良いと判定し、ダミー応答部102へダミー応答を終了する指示を行う。所定の基準の定義によって、該基準を満たす場合および満たさない場合の処理は逆に設定されてもよい。 The communication monitoring unit 103 monitors the communication state with the remote device 20 that is the communication partner of the data processing device 10, and determines whether or not the communication state satisfies a predetermined standard. Specifically, the communication monitoring unit 103 calculates an index indicating a communication state between the data processing device 10 and the remote device 20 at a predetermined time interval, and performs communication when the calculated index does not satisfy a predetermined standard. It is determined that the state is bad, and the dummy response unit 102 is instructed to start a dummy response. On the other hand, the communication monitoring unit 103 determines that the communication state is good when the calculated index satisfies a predetermined criterion, and instructs the dummy response unit 102 to end the dummy response. Depending on the definition of the predetermined criterion, the processing when the criterion is satisfied and when the criterion is not satisfied may be set in reverse.
 通信状態を示す指標として、例えばリモート装置20からの応答時間、リモート装置20との通信の速度、リモート装置20からのパケットの破棄率(エラー率)、リモート装置20によるキープアライブパケットへの応答有無等を用いることができる。すなわち、応答時間が所定の値未満(又は以下)である場合に通信状態が良いと判定され、所定の値より大きい(又は以上)場合に通信状態が悪いと判定される。あるいは、通信の速度が所定の値より大きい(又は以上)場合に通信状態が良いと判定され、所定の値未満(又は以下)である場合に通信状態が悪いと判定される。あるいは、パケットの破棄率(エラー率)が所定の値未満(又は以下)である場合に通信状態が良いと判定され、所定の値より大きい(又は以上)場合に通信状態が悪いと判定される。あるいは、キープアライブパケットへの応答がある場合に通信状態が良いと判定され、応答がない場合に通信状態が悪いと判定される。通信状態の基準として、利用者によって入力された値を用いてもよく、あるいはプロセッサ側通信制御装置100によって決定された値を用いてもよい。通信状態の判定のために、ここに示したものに限られず、通信状態を示す任意の値および基準を用いることができる。 As an index indicating the communication state, for example, the response time from the remote device 20, the communication speed with the remote device 20, the packet discard rate (error rate) from the remote device 20, and the presence or absence of a response to the keep alive packet by the remote device 20 Etc. can be used. That is, when the response time is less than (or below) a predetermined value, it is determined that the communication state is good, and when the response time is greater (or more) than the predetermined value, it is determined that the communication state is bad. Alternatively, it is determined that the communication state is good when the communication speed is higher (or higher) than the predetermined value, and it is determined that the communication state is lower when the communication speed is lower (or lower) than the predetermined value. Alternatively, when the packet discard rate (error rate) is less than (or below) a predetermined value, it is determined that the communication state is good, and when it is greater than (or above) a predetermined value, it is determined that the communication state is bad. . Alternatively, it is determined that the communication state is good when there is a response to the keep-alive packet, and it is determined that the communication state is bad when there is no response. As a reference for the communication state, a value input by the user may be used, or a value determined by the processor-side communication control device 100 may be used. The determination of the communication state is not limited to the one shown here, and any value and reference indicating the communication state can be used.
 通常の通信状態(すなわち良い通信状態)においては、データ処理装置10からリモート装置20(デバイス30)へデータが送信された後に、リモート装置20からデータ処理装置10へ所定の応答(例えば指示の受諾を示す応答や、取得したデータを示す応答)が返ってくる。一方、異常な通信状態(すなわち悪い通信状態)においては、データ処理装置10からリモート装置20(デバイス30)へデータが送信された後に、所定の応答が返ってこない場合がある。このとき、データ処理装置10が応答を待ち続けて次の処理を行うことができない場合や、データ処理装置10が応答のないデバイス30との接続を切断してしまい正常な運用を継続できない場合がある。 In a normal communication state (that is, a good communication state), after data is transmitted from the data processing device 10 to the remote device 20 (device 30), a predetermined response (for example, acceptance of an instruction) is sent from the remote device 20 to the data processing device 10. Or a response indicating acquired data) is returned. On the other hand, in an abnormal communication state (that is, a bad communication state), a predetermined response may not be returned after data is transmitted from the data processing device 10 to the remote device 20 (device 30). At this time, there is a case where the data processing device 10 cannot continue the next process while waiting for a response, or the data processing device 10 disconnects from the device 30 which does not respond and cannot continue normal operation. is there.
 データ処理装置10がこのような異常な状態になることを防ぐために、ダミー応答部102は、通信状態が所定の基準を満たさない場合(すなわち通信監視部103からダミー応答開始指示を受けた場合)に、ダミー応答を開始する。また、ダミー応答部102は、ダミー応答開始後に通信状態が所定の基準を満たすようになった場合(すなわち通信監視部103からダミー応答終了指示を受けた場合)に、ダミー応答を終了する。具体的なダミー応答処理の内容を以下に説明する。 In order to prevent the data processing apparatus 10 from entering such an abnormal state, the dummy response unit 102 has a case where the communication state does not satisfy a predetermined standard (that is, when a dummy response start instruction is received from the communication monitoring unit 103). A dummy response is started. Further, the dummy response unit 102 ends the dummy response when the communication state satisfies a predetermined standard after the dummy response starts (that is, when a dummy response end instruction is received from the communication monitoring unit 103). Details of the dummy response process will be described below.
 ダミー応答部102は、通信状態の良し悪しに関わらず、データ処理装置10(CPU11)から送信されるデータ(パケット)を取得し、送信データ記憶装置106に記録する。送信データ記憶装置106には、ダミー応答の決定に利用される所定の時間のデータが記録され、該時間を超過したデータは削除される。 The dummy response unit 102 acquires the data (packet) transmitted from the data processing device 10 (CPU 11) regardless of whether the communication state is good or bad, and records it in the transmission data storage device 106. In the transmission data storage device 106, data for a predetermined time used for determining the dummy response is recorded, and data exceeding the time is deleted.
 通信状態が所定の基準を満たす場合には、ダミー応答部102は、送信されるデータを透過させる。その後、送信されるデータは、プロセッサ側ブリッジ部104およびデバイス側ブリッジ部204を介してリモート装置20に接続されたデバイス30に到達する。 When the communication state satisfies a predetermined standard, the dummy response unit 102 transmits the transmitted data. Thereafter, the transmitted data reaches the device 30 connected to the remote apparatus 20 via the processor side bridge unit 104 and the device side bridge unit 204.
 通信状態が所定の基準を満たさない場合に、ダミー応答部102は、送信されるデータを遮断する。次にダミー応答部102は、応答ルール記憶装置107に予め記録されている応答ルールを取得する。応答ルールは、送信されるデータ(パケット)のパターンと、該パターンに対応する応答(ダミー応答)とを関連付ける規則である。すなわち、ダミー応答は、正常時においてデータ処理装置10(CPU11)からリモート装置20(デバイス30)に送信されるデータに対して返されるべき応答を模擬したものである。応答ルールに記録するデータのパターンの長さは、任意に設定される。応答ルールは、後述の応答学習方法によって正常時の通信から学習されるか、あるいは利用者によって設定され、応答ルール記憶装置107に予め記録される。 When the communication state does not satisfy the predetermined standard, the dummy response unit 102 blocks the transmitted data. Next, the dummy response unit 102 acquires a response rule recorded in advance in the response rule storage device 107. The response rule is a rule that associates a pattern of data (packet) to be transmitted with a response (dummy response) corresponding to the pattern. That is, the dummy response simulates a response to be returned to data transmitted from the data processing device 10 (CPU 11) to the remote device 20 (device 30) at the normal time. The length of the pattern of data recorded in the response rule is arbitrarily set. The response rule is learned from normal communication by a response learning method to be described later, or is set by the user and recorded in the response rule storage device 107 in advance.
 ダミー応答部102は、送信されるデータに応答ルールのいずれかのパターンが含まれる場合に、該パターンに関連付けられたダミー応答を、送信されるデータに対応するダミー応答として決定する。送信されるデータに対応するダミー応答を応答ルールから決定する方法はこれに限られず、任意の方法を用いることができる。例えば送信されるデータと応答ルールのパターンとの類似度を算出し、該類似度が所定の閾値以上又は所定の閾値より高い場合に、該パターンに関連付けられたダミー応答を決定してもよい。 When the data to be transmitted includes any pattern of response rules, the dummy response unit 102 determines a dummy response associated with the pattern as a dummy response corresponding to the transmitted data. The method of determining the dummy response corresponding to the transmitted data from the response rule is not limited to this, and an arbitrary method can be used. For example, the similarity between the transmitted data and the response rule pattern may be calculated, and when the similarity is equal to or higher than a predetermined threshold or higher than the predetermined threshold, a dummy response associated with the pattern may be determined.
 さらにダミー応答部102は、送信データ記憶装置106に記録されたデータ(すなわち既に送信されたデータ)およびこれから送信されるデータに基づいて、応答ルールからダミー応答を決定してもよい。具体的には、ダミー応答部102は、既に送信されたデータとこれから送信されるデータとを結合したデータ列に応答ルールのパターンが含まれる場合に、該パターンに関連付けられたダミー応答を、送信されるデータに対応するダミー応答として決定する。換言すると、ダミー応答部102は、通信状態が所定の基準を満たさなくなった時間(すなわちダミー応答を開始した時間)を含む所定の時間範囲に送信されるデータに基づいて、ダミー応答を決定する。これから送信されるデータに加えて既に送信されたデータを用いることによって、データ送信の途中で通信状態が悪化してダミー応答が始まった場合であっても、ダミー応答開始前から引き続いて送信されるデータに基づいて応答ルールのパターンを検出することが可能になる。 Further, the dummy response unit 102 may determine a dummy response from the response rule based on data recorded in the transmission data storage device 106 (that is, data that has already been transmitted) and data that will be transmitted. Specifically, the dummy response unit 102 transmits a dummy response associated with the pattern when the response rule pattern is included in the data string obtained by combining the already transmitted data and the data to be transmitted. It is determined as a dummy response corresponding to the data to be processed. In other words, the dummy response unit 102 determines a dummy response based on data transmitted in a predetermined time range including a time when the communication state does not satisfy the predetermined standard (that is, a time when the dummy response is started). By using data that has already been transmitted in addition to data that will be transmitted in the future, even if the communication status deteriorates during data transmission and a dummy response starts, it will be transmitted continuously before the dummy response starts. It becomes possible to detect the pattern of the response rule based on the data.
 さらにダミー応答部102は、送信されるデータに加えて、送信されるデータの特性に基づいて、応答ルールからダミー応答を決定してもよい。送信されるデータの特性は、送信されるデータに付随する情報であり、例えば送信元および送信先のアドレスを示す情報、あるいはPCIExpressパケット(TLP:Transaction Layer Packet)に準拠した情報(TLP種別、コマンド、メモリアクセスアドレス、I/Oアクセスアドレス、TAG、コンフィグレーションレジスタ、メッセージ、ペイロード等)である。応答ルールは、送信されるデータのパターンと、データの特性と、ダミー応答とを関連付けて記録する。ダミー応答部102は、送信されるデータに応答ルールのいずれかのパターンが含まれる場合であって、かつ送信されるデータの特性および応答ルールのデータの特性が同一又は類似の場合に、該パターンおよび該データの特性に関連付けられたダミー応答を、送信されるデータに対応するダミー応答として決定する。 Further, the dummy response unit 102 may determine a dummy response from the response rule based on the characteristics of the transmitted data in addition to the transmitted data. The characteristics of the transmitted data are information accompanying the transmitted data. For example, information indicating the addresses of the transmission source and the transmission destination, or information (TLP type, command that conforms to the PCI Express packet (TLP: Transaction Layer Packet)) Memory access address, I / O access address, TAG, configuration register, message, payload, etc.). The response rule records a pattern of data to be transmitted, data characteristics, and a dummy response in association with each other. The dummy response unit 102 is the case where any pattern of the response rule is included in the transmitted data and the characteristics of the transmitted data and the data characteristics of the response rule are the same or similar. And the dummy response associated with the characteristics of the data is determined as a dummy response corresponding to the transmitted data.
 さらにダミー応答部102は、送信されるデータに加えて、通信システム1の構成情報および稼動情報の少なくとも一方に基づいて、応答ルールからダミー応答を決定してもよい。現在(すなわちデータの送信時)の構成情報は、構成情報記憶装置50から取得される。現在(すなわちデータの送信時)の稼動情報は、稼動情報記憶装置60から取得される。応答ルールは、送信されるデータのパターンと、構成情報および稼動情報の少なくとも一方と、ダミー応答とを関連付けて記録する。ダミー応答部102は、送信されるデータに応答ルールのいずれかのパターンが含まれる場合であって、かつ現在の構成情報および稼動情報の少なくとも一方および応答ルールの構成情報および稼動情報の少なくとも一方が同一又は類似の場合に、該パターンおよび該構成情報および稼動情報の少なくとも一方に関連付けられたダミー応答を、送信されるデータに対応するダミー応答として決定する。 Further, the dummy response unit 102 may determine a dummy response from the response rule based on at least one of the configuration information and the operation information of the communication system 1 in addition to the transmitted data. The current configuration information (that is, at the time of data transmission) is acquired from the configuration information storage device 50. The current operation information (that is, at the time of data transmission) is acquired from the operation information storage device 60. The response rule records a pattern of data to be transmitted, at least one of configuration information and operation information, and a dummy response in association with each other. The dummy response unit 102 is a case where any pattern of response rules is included in the transmitted data, and at least one of the current configuration information and operation information and at least one of the response rule configuration information and operation information is If they are the same or similar, a dummy response associated with at least one of the pattern and the configuration information and operation information is determined as a dummy response corresponding to the transmitted data.
 そしてダミー応答部102は、応答ルールから決定されたダミー応答を、データ処理装置10(CPU11)に送信する。このような構成によって、データ処理装置10は、通信状態が悪いためリモート装置20に接続されたデバイス30からの本来の応答が受信できない場合であっても、プロセッサ側通信制御装置100から該応答を模擬したダミー応答を受信するため、運用を継続することができる。 The dummy response unit 102 transmits the dummy response determined from the response rule to the data processing device 10 (CPU 11). With this configuration, the data processing apparatus 10 receives the response from the processor-side communication control apparatus 100 even when the original response from the device 30 connected to the remote apparatus 20 cannot be received due to a poor communication state. Since the simulated dummy response is received, the operation can be continued.
 ここで、データ処理装置10(CPU11)からデータを送信した後、リモート装置20(デバイス30)から応答が到着する前に通信状態が悪くなった場合の処理について説明する。ダミー応答部102は送信されたデータ(パケット)の情報とともに、該送信されたデータに対してリモート装置20(デバイス30)から応答が到着したか否かの状況を送信データ記憶装置106に記録する。ダミー応答が開始された場合には、ダミー応答部102は、送信されたデータに対する応答の到着状況を送信データ記憶装置106から取得し、応答が到着していない送信されたデータからダミー応答を開始する。既にダミー応答が行われた送信されたデータに対して、リモート装置20(デバイス30)から本物の応答が到着した場合には、ダミー応答部102は該本物の応答を廃棄する。これにより、データ処理装置10(CPU11)がダミー応答および本物の応答を二重に受け取って異常が発生することを抑制することができる。 Here, a description will be given of processing in a case where the communication state is deteriorated before a response arrives from the remote device 20 (device 30) after data is transmitted from the data processing device 10 (CPU 11). The dummy response unit 102 records information on the transmitted data (packet) in the transmission data storage device 106 as to whether or not a response has arrived from the remote device 20 (device 30) with respect to the transmitted data. . When the dummy response is started, the dummy response unit 102 acquires the arrival status of the response to the transmitted data from the transmission data storage device 106, and starts the dummy response from the transmitted data for which no response has arrived. To do. If a real response arrives from the remote device 20 (device 30) to the transmitted data for which a dummy response has already been made, the dummy response unit 102 discards the real response. Thereby, it can suppress that the data processor 10 (CPU11) receives a dummy response and a real response twice, and an abnormality generate | occur | produces.
 デバイス側通信制御装置200は、プロセッサ側通信制御装置100と同様の構成を有するが、リモート装置20に接続されたデバイス30からデータ処理装置10のCPU11へ送信されるデータを対象とする点で異なる。デバイス側通信制御装置200は、システムバス側インタフェース201と、ダミー応答部202と、通信監視部203と、デバイス側ブリッジ部204と、ネットワーク側インタフェース205と、送信データ記憶装置206と、応答ルール記憶装置207とを備える。システムバス側インタフェース201は、リモート装置20のシステムバス22に接続するための接続部であり、システムバス22の種類に合わせた接続端子(例えばPCIExpress端子)を有する。ネットワーク側インタフェース205は、ネットワーク70に接続するための接続部であり、ネットワーク70の種類に合わせた接続機構(有線接続端子又は無線接続アンテナ)を有する。 The device-side communication control device 200 has the same configuration as the processor-side communication control device 100, but differs in that data transmitted from the device 30 connected to the remote device 20 to the CPU 11 of the data processing device 10 is targeted. . The device-side communication control device 200 includes a system bus-side interface 201, a dummy response unit 202, a communication monitoring unit 203, a device-side bridge unit 204, a network-side interface 205, a transmission data storage device 206, and a response rule storage. Device 207. The system bus side interface 201 is a connection unit for connecting to the system bus 22 of the remote device 20 and has a connection terminal (for example, a PCI Express terminal) according to the type of the system bus 22. The network side interface 205 is a connection unit for connecting to the network 70, and has a connection mechanism (wired connection terminal or wireless connection antenna) that matches the type of the network 70.
 デバイス側ブリッジ部204は、プロセッサ側ブリッジ部104と協働して仮想的なシステムバススイッチを構成する。具体的には、デバイス側ブリッジ部204は、リモート装置20に接続されたデバイス30からデータ処理装置10のCPU11に向けて送信されるデータ(パケット)をカプセル化してからネットワーク70に送出する。カプセル化されたデータは、プロセッサ側ブリッジ部104によってデカプセル化(カプセル化を解除)されてCPU11に到達する。また、デバイス側ブリッジ部204は、プロセッサ側ブリッジ部104によってカプセル化されたデータを受信すると、該データをデカプセル化(カプセル化を解除)してからリモート装置20(デバイス30)へ渡す。このような構成により、リモート装置20に接続されたデバイス30は、送信されるデータに特別な処理(プロトコル変換や符号化)を行うことなく、データ処理装置10のCPU11との間でデータの授受を行うことができる。 The device-side bridge unit 204 forms a virtual system bus switch in cooperation with the processor-side bridge unit 104. Specifically, the device-side bridge unit 204 encapsulates data (packets) transmitted from the device 30 connected to the remote device 20 to the CPU 11 of the data processing device 10 and then sends the data to the network 70. The encapsulated data is decapsulated (decapsulated) by the processor side bridge unit 104 and reaches the CPU 11. In addition, when the device-side bridge unit 204 receives the data encapsulated by the processor-side bridge unit 104, the device-side bridge unit 204 decapsulates (decapsulates) the data and then passes the data to the remote device 20 (device 30). With such a configuration, the device 30 connected to the remote device 20 exchanges data with the CPU 11 of the data processing device 10 without performing special processing (protocol conversion or encoding) on the transmitted data. It can be performed.
 通信監視部203は、リモート装置20の通信相手であるデータ処理装置10との通信状態を監視し、通信状態が所定の基準を満たすか否かを判定する。具体的には、通信監視部203は、所定の時間間隔でデータ処理装置10およびリモート装置20の間の通信状態を示す指標を算出し、算出された指標が所定の基準を満たさない場合に通信状態が悪いと判定し、ダミー応答部202へダミー応答を開始する指示を行う。一方、通信監視部203は、算出された指標が所定の基準を満たす場合に通信状態が良いと判定し、ダミー応答部202へダミー応答を終了する指示を行う。所定の基準の定義によって、該基準を満たす場合および満たさない場合の処理は逆に設定されてもよい。 The communication monitoring unit 203 monitors a communication state with the data processing apparatus 10 that is a communication partner of the remote device 20, and determines whether or not the communication state satisfies a predetermined standard. Specifically, the communication monitoring unit 203 calculates an index indicating a communication state between the data processing device 10 and the remote device 20 at a predetermined time interval, and performs communication when the calculated index does not satisfy a predetermined standard. It is determined that the state is bad, and the dummy response unit 202 is instructed to start a dummy response. On the other hand, the communication monitoring unit 203 determines that the communication state is good when the calculated index satisfies a predetermined criterion, and instructs the dummy response unit 202 to end the dummy response. Depending on the definition of the predetermined criterion, the processing when the criterion is satisfied and when the criterion is not satisfied may be set in reverse.
 通信状態を示す指標として、例えばデータ処理装置10からの応答時間、データ処理装置10との通信の速度、データ処理装置10からのパケットの破棄率(エラー率)、データ処理装置10によるキープアライブパケットへの応答有無等を用いることができる。すなわち、応答時間が所定の値未満(又は以下)である場合に通信状態が良いと判定され、所定の値より大きい(又は以上)場合に通信状態が悪いと判定される。あるいは、通信の速度が所定の値より大きい(又は以上)場合に通信状態が良いと判定され、所定の値未満(又は以下)である場合に通信状態が悪いと判定される。あるいは、パケットの破棄率(エラー率)が所定の値未満(又は以下)である場合に通信状態が良いと判定され、所定の値より大きい(又は以上)場合に通信状態が悪いと判定される。あるいは、キープアライブパケットへの応答がある場合に通信状態が良いと判定され、応答がない場合に通信状態が悪いと判定される。通信状態の基準として、利用者によって入力された値を用いてもよく、あるいはデバイス側通信制御装置200によって決定された値を用いてもよい。通信状態の判定のために、ここに示したものに限られず、通信状態を示す任意の値および基準を用いることができる。 As an index indicating a communication state, for example, a response time from the data processing device 10, a communication speed with the data processing device 10, a packet discard rate (error rate) from the data processing device 10, a keep-alive packet by the data processing device 10 The presence or absence of a response to can be used. That is, when the response time is less than (or below) a predetermined value, it is determined that the communication state is good, and when the response time is greater (or more) than the predetermined value, it is determined that the communication state is bad. Alternatively, it is determined that the communication state is good when the communication speed is higher (or higher) than the predetermined value, and it is determined that the communication state is lower when the communication speed is lower (or lower) than the predetermined value. Alternatively, when the packet discard rate (error rate) is less than (or below) a predetermined value, it is determined that the communication state is good, and when it is greater than (or above) a predetermined value, it is determined that the communication state is bad. . Alternatively, it is determined that the communication state is good when there is a response to the keep-alive packet, and it is determined that the communication state is bad when there is no response. As a reference for the communication state, a value input by the user may be used, or a value determined by the device side communication control apparatus 200 may be used. The determination of the communication state is not limited to the one shown here, and any value and reference indicating the communication state can be used.
 通常の通信状態(すなわち良い通信状態)においては、リモート装置20(デバイス30)からデータ処理装置10へデータが送信された後に、データ処理装置10からリモート装置20へ所定の応答(例えば指示の受諾を示す応答や、取得したデータを示す応答)が返ってくる。一方、異常な通信状態(すなわち悪い通信状態)においては、リモート装置20(デバイス30)からデータ処理装置10へデータが送信された後に、所定の応答が返ってこない場合がある。このとき、デバイス30が応答を待ち続けて次の処理を行うことができない場合や、デバイス30が応答のないデータ処理装置10との接続を切断してしまい正常な運用を継続できない場合がある。 In a normal communication state (ie, a good communication state), after data is transmitted from the remote device 20 (device 30) to the data processing device 10, a predetermined response (for example, acceptance of an instruction) is sent from the data processing device 10 to the remote device 20. Or a response indicating acquired data) is returned. On the other hand, in an abnormal communication state (that is, a bad communication state), a predetermined response may not be returned after data is transmitted from the remote device 20 (device 30) to the data processing device 10. At this time, the device 30 may continue to wait for a response and cannot perform the next process, or the device 30 may disconnect from the data processing apparatus 10 that does not respond and cannot continue normal operation.
 リモート装置20(デバイス30)がこのような異常な状態になることを防ぐために、ダミー応答部202は、通信状態が所定の基準を満たさない場合に、ダミー応答を開始する。また、ダミー応答部202は、ダミー応答開始後に通信状態が所定の基準を満たすようになった場合に、ダミー応答を終了する。具体的なダミー応答処理の内容を以下に説明する。 In order to prevent the remote apparatus 20 (device 30) from entering such an abnormal state, the dummy response unit 202 starts a dummy response when the communication state does not satisfy a predetermined standard. Further, the dummy response unit 202 ends the dummy response when the communication state satisfies a predetermined standard after the dummy response starts. Details of the dummy response process will be described below.
 ダミー応答部202は、通信状態の良し悪しに関わらず、リモート装置20(デバイス30)から送信されるデータ(パケット)を取得し、送信データ記憶装置206に記録する。送信データ記憶装置206には、ダミー応答の決定に利用される所定の時間のデータが記録され、該時間を超過したデータは削除される。 The dummy response unit 202 acquires data (packets) transmitted from the remote device 20 (device 30) regardless of whether the communication state is good or bad, and records it in the transmission data storage device 206. In the transmission data storage device 206, data for a predetermined time used for determining the dummy response is recorded, and data exceeding the time is deleted.
 通信状態が所定の基準を満たす場合には、ダミー応答部202は、送信されるデータを透過させる。その後、送信されるデータは、デバイス側ブリッジ部204およびプロセッサ側ブリッジ部104を介してデータ処理装置10のCPU11に到達する。 When the communication state satisfies a predetermined standard, the dummy response unit 202 transmits the transmitted data. Thereafter, the transmitted data reaches the CPU 11 of the data processing apparatus 10 via the device side bridge unit 204 and the processor side bridge unit 104.
 通信状態が所定の基準を満たさない場合に、ダミー応答部202は、送信されるデータを遮断する。次にダミー応答部202は、応答ルール記憶装置207に予め記録されている応答ルールを取得する。応答ルールは、送信されるデータのパターンと、該パターンに対応する応答(ダミー応答)とを関連付ける規則である。すなわち、ダミー応答は、正常時においてリモート装置20(デバイス30)からデータ処理装置10(CPU11)に送信されるデータに対して返されるべき応答を模擬したものである。応答ルールは、後述の応答学習方法によって正常時の通信から学習されるか、あるいは利用者によって設定され、応答ルール記憶装置207に予め記録される。 When the communication state does not satisfy the predetermined standard, the dummy response unit 202 blocks the transmitted data. Next, the dummy response unit 202 acquires a response rule recorded in advance in the response rule storage device 207. The response rule is a rule that associates a pattern of data to be transmitted with a response (dummy response) corresponding to the pattern. That is, the dummy response simulates a response that should be returned to data transmitted from the remote device 20 (device 30) to the data processing device 10 (CPU 11) in a normal state. The response rule is learned from normal communication by a response learning method to be described later, or is set by the user and recorded in the response rule storage device 207 in advance.
 ダミー応答部202は、送信されるデータに応答ルールのいずれかのパターンが含まれる場合に、該パターンに関連付けられたダミー応答を、送信されるデータに対応するダミー応答として決定する。応答ルールから送信されるデータに対応するダミー応答の決定する方法はこれに限られず、任意の方法を用いることができる。例えば送信されるデータと応答ルールのパターンとの類似度を算出し、該類似度が所定の閾値以上又は所定の閾値より高い場合に、該パターンに関連付けられたダミー応答を決定してもよい。 When the data to be transmitted includes any pattern of response rules, the dummy response unit 202 determines a dummy response associated with the pattern as a dummy response corresponding to the transmitted data. The method of determining the dummy response corresponding to the data transmitted from the response rule is not limited to this, and any method can be used. For example, the similarity between the transmitted data and the response rule pattern may be calculated, and when the similarity is equal to or higher than a predetermined threshold or higher than the predetermined threshold, a dummy response associated with the pattern may be determined.
 さらにダミー応答部202は、送信データ記憶装置206に記録されたデータ(すなわち既に送信されたデータ)およびこれから送信されるデータに基づいて、応答ルールからダミー応答を決定してもよい。具体的には、ダミー応答部202は、既に送信されたデータとこれから送信されるデータとを結合したデータ列に応答ルールのパターンが含まれる場合に、該パターンに関連付けられたダミー応答を、送信されるデータに対応するダミー応答として決定する。換言すると、ダミー応答部202は、通信状態が所定の基準を満たさなくなった時間(すなわちダミー応答を開始した時間)を含む所定の時間範囲に送信されるデータに基づいて、ダミー応答を決定する。これから送信されるデータに加えて既に送信されたデータを用いることによって、送信されるデータの途中でダミー応答が始まった場合であっても、応答ルールのパターンの検出が可能になる。 Further, the dummy response unit 202 may determine a dummy response from the response rule based on data recorded in the transmission data storage device 206 (that is, data that has already been transmitted) and data that will be transmitted. Specifically, the dummy response unit 202 transmits a dummy response associated with the pattern when the response rule pattern is included in the data string obtained by combining the already transmitted data and the data to be transmitted. It is determined as a dummy response corresponding to the data to be processed. In other words, the dummy response unit 202 determines a dummy response based on data transmitted in a predetermined time range including a time when the communication state does not satisfy the predetermined standard (that is, a time when the dummy response is started). By using already transmitted data in addition to the data to be transmitted, it is possible to detect the response rule pattern even when a dummy response starts in the middle of the transmitted data.
 さらにダミー応答部202は、送信されるデータに加えて、送信されるデータの特性に基づいて、応答ルールからダミー応答を決定してもよい。送信されるデータの特性は、送信されるデータに付随する情報であり、例えば送信元および送信先のアドレスを示す情報、あるいはPCIExpressパケット(TLP)に準拠した情報(TLP種別、コマンド、メモリアクセスアドレス、I/Oアクセスアドレス、TAG、コンフィグレーションレジスタ、メッセージ、ペイロード等)である。応答ルールは、送信されるデータのパターンと、データの特性と、ダミー応答とを関連付けて記録する。ダミー応答部202は、送信されるデータに応答ルールのいずれかのパターンが含まれる場合であって、かつ送信されるデータの特性および応答ルールのデータの特性が同一又は類似の場合に、該パターンおよび該データの特性に関連付けられたダミー応答を、送信されるデータに対応するダミー応答として決定する。 Further, the dummy response unit 202 may determine a dummy response from the response rule based on the characteristics of the transmitted data in addition to the transmitted data. The characteristics of the transmitted data are information accompanying the transmitted data. For example, information indicating the addresses of the transmission source and the transmission destination, or information (TLP type, command, memory access address) based on the PCI Express packet (TLP) , I / O access address, TAG, configuration register, message, payload, etc.). The response rule records a pattern of data to be transmitted, data characteristics, and a dummy response in association with each other. The dummy response unit 202 is a case where any pattern of the response rule is included in the transmitted data, and when the characteristic of the transmitted data and the characteristic of the data of the response rule are the same or similar, And the dummy response associated with the characteristics of the data is determined as a dummy response corresponding to the transmitted data.
 さらにダミー応答部202は、送信されるデータに加えて、通信システム1の構成情報および稼動情報の少なくとも一方に基づいて、応答ルールからダミー応答を決定してもよい。現在(すなわちデータの送信時)の構成情報は、構成情報記憶装置50から取得される。現在(すなわちデータの送信時)の稼動情報は、稼動情報記憶装置60から取得される。応答ルールは、送信されるデータのパターンと、構成情報および稼動情報の少なくとも一方と、ダミー応答とを関連付けて記録する。ダミー応答部202は、送信されるデータに応答ルールのいずれかのパターンが含まれる場合であって、かつ現在の構成情報および稼動情報の少なくとも一方および応答ルールの構成情報および稼動情報の少なくとも一方が同一又は類似の場合に、該パターンおよび該構成情報および稼動情報の少なくとも一方に関連付けられたダミー応答を、送信されるデータに対応するダミー応答として決定する。 Further, the dummy response unit 202 may determine a dummy response from the response rule based on at least one of the configuration information and the operation information of the communication system 1 in addition to the transmitted data. The current configuration information (that is, at the time of data transmission) is acquired from the configuration information storage device 50. The current operation information (that is, at the time of data transmission) is acquired from the operation information storage device 60. The response rule records a pattern of data to be transmitted, at least one of configuration information and operation information, and a dummy response in association with each other. The dummy response unit 202 is a case where any pattern of response rules is included in the transmitted data, and at least one of the current configuration information and operation information and at least one of the response rule configuration information and operation information is If they are the same or similar, a dummy response associated with at least one of the pattern and the configuration information and operation information is determined as a dummy response corresponding to the transmitted data.
 そしてダミー応答部202は、応答ルールから決定されたダミー応答を、リモート装置20(デバイス30)に送信する。このような構成によって、リモート装置20に接続されたデバイス30は、通信状態が悪いためデータ処理装置10のCPU11からの本来の応答が受信できない場合であっても、デバイス側通信制御装置200から該応答を模擬したダミー応答を受信するため、運用を継続することができる。 The dummy response unit 202 transmits the dummy response determined from the response rule to the remote device 20 (device 30). With such a configuration, even if the device 30 connected to the remote device 20 cannot receive an original response from the CPU 11 of the data processing device 10 because of a poor communication state, the device 30 from the device-side communication control device 200 Since a dummy response that simulates the response is received, the operation can be continued.
 ここで、リモート装置20(デバイス30)からデータを送信した後、データ処理装置10(CPU11)から応答が到着する前に通信状態が悪くなった場合について説明する。ダミー応答部202は送信されたデータ(パケット)の情報とともに、該送信されたデータに対してデータ処理装置10(CPU11)から応答が到着したか否かの状況を送信データ記憶装置206に記録する。ダミー応答が開始された場合には、ダミー応答部202は、送信されたデータに対する応答の到着状況を送信データ記憶装置206から取得し、応答が到着していない送信されたデータからダミー応答を開始する。既にダミー応答が行われた送信されたデータに対して、データ処理装置10(CPU11)から本物の応答が到着した場合には、ダミー応答部202は該本物の応答を廃棄する。これにより、リモート装置20(デバイス30)がダミー応答および本物の応答を二重に受け取ってエラーが発生することを抑制することができる。 Here, a case will be described in which the communication state deteriorates before the response arrives from the data processing device 10 (CPU 11) after data is transmitted from the remote device 20 (device 30). The dummy response unit 202 records information on the transmitted data (packet) in the transmission data storage device 206 as to whether a response has arrived from the data processing device 10 (CPU 11) for the transmitted data. . When the dummy response is started, the dummy response unit 202 acquires the arrival status of the response to the transmitted data from the transmission data storage device 206, and starts the dummy response from the transmitted data for which no response has arrived. To do. When a real response arrives from the data processing apparatus 10 (CPU 11) to the transmitted data for which a dummy response has already been made, the dummy response unit 202 discards the real response. Thereby, it can suppress that the remote apparatus 20 (device 30) receives a dummy response and a real response twice, and an error generate | occur | produces.
 プロセッサ側通信制御装置100およびデバイス側通信制御装置200は、図3に示す具体的な構成に限定されない。プロセッサ側通信制御装置100およびデバイス側通信制御装置200は、それぞれ1つの装置に限られず、2つ以上の物理的に分離した装置が有線又は無線で接続されることにより構成されていてもよい。プロセッサ側通信制御装置100およびデバイス側通信制御装置200に含まれる各部は、それぞれプログラムを実行するプロセッサによって実現されてもよく、あるいは電気回路構成により実現されていてもよい。ここで、電気回路構成とは、単一のデバイス、複数のデバイス、チップセット又はクラウドを概念的に含む文言である。 The processor side communication control apparatus 100 and the device side communication control apparatus 200 are not limited to the specific configuration shown in FIG. The processor-side communication control device 100 and the device-side communication control device 200 are not limited to one device, but may be configured by connecting two or more physically separated devices in a wired or wireless manner. Each unit included in the processor side communication control apparatus 100 and the device side communication control apparatus 200 may be realized by a processor that executes a program, or may be realized by an electric circuit configuration. Here, the electric circuit configuration is a term that conceptually includes a single device, a plurality of devices, a chipset, or a cloud.
 また、プロセッサ側通信制御装置100およびデバイス側通信制御装置200の少なくとも一部がSaaS形式で提供されてよい。すなわち、プロセッサ側通信制御装置100およびデバイス側通信制御装置200を実現するための機能の少なくとも一部が、ネットワーク経由で実行されるソフトウェアによって実行されてよい。 Further, at least a part of the processor side communication control apparatus 100 and the device side communication control apparatus 200 may be provided in the SaaS format. That is, at least a part of functions for realizing the processor side communication control apparatus 100 and the device side communication control apparatus 200 may be executed by software executed via a network.
 図4は、本実施形態に係るプロセッサ側通信制御装置100およびデバイス側通信制御装置200によって実行される通信制御方法(ダミー応答方法)のフローチャートを示す図である。図4のフローチャートは、データ処理装置10およびリモート装置20の一方から他方への通信が開始されたことに応じて開始される。 FIG. 4 is a view showing a flowchart of a communication control method (dummy response method) executed by the processor side communication control apparatus 100 and the device side communication control apparatus 200 according to the present embodiment. The flowchart of FIG. 4 is started in response to the start of communication from one of the data processing device 10 and the remote device 20 to the other.
 データ処理装置10からリモート装置20へデータが送信される際には、送信元であるデータ処理装置10に設けられているプロセッサ側通信制御装置100によって図4の通信制御方法が実行される。また、リモート装置20からデータ処理装置10へデータが送信される際には、送信元であるリモート装置20に設けられているデバイス側通信制御装置200によって図4の通信制御方法が実行される。また、プロセッサ側通信制御装置100およびデバイス側通信制御装置200によって並行して図4の通信制御方法が実行されてもよい。 When data is transmitted from the data processing device 10 to the remote device 20, the communication control method shown in FIG. 4 is executed by the processor-side communication control device 100 provided in the data processing device 10 that is the transmission source. When data is transmitted from the remote device 20 to the data processing device 10, the communication control method shown in FIG. 4 is executed by the device-side communication control device 200 provided in the remote device 20 that is the transmission source. Further, the communication control method of FIG. 4 may be executed in parallel by the processor side communication control apparatus 100 and the device side communication control apparatus 200.
 まず、通信監視部103、203は、データ処理装置10およびリモート装置20の間の通信状態を判定する(ステップS101)。通信状態が所定の基準を満たす場合には(ステップS102のYES)、通信監視部103、203は通信状態が良いと判定し、ステップS101を繰り返す。データの送信は継続され、送信されるデータは送信データ記憶装置106、206に記録される。 First, the communication monitoring units 103 and 203 determine the communication state between the data processing device 10 and the remote device 20 (step S101). When the communication state satisfies a predetermined standard (YES in step S102), the communication monitoring units 103 and 203 determine that the communication state is good and repeat step S101. The data transmission is continued, and the transmitted data is recorded in the transmission data storage devices 106 and 206.
 通信状態が所定の基準を満たさない場合には(ステップS102のNO)、通信監視部103、203は、通信状態が悪いと判定し、ダミー応答部102、202へダミー応答を開始する指示を行う(ステップS103)。 When the communication state does not satisfy the predetermined standard (NO in step S102), the communication monitoring units 103 and 203 determine that the communication state is bad and instruct the dummy response units 102 and 202 to start a dummy response. (Step S103).
 次にダミー応答部102、202は、データの送信元(データ処理装置10又はリモート装置20)から送信されるデータを取得するとともに、応答ルール記憶装置107、207から応答ルールを取得する(ステップS104)。このとき、ダミー応答部102、202は、データの送信を遮断する。また、ダミー応答の決定に既に送信されたデータを用いる場合には、ダミー応答部102、202は、送信データ記憶装置106、206から既に送信されたデータを取得する。また、ダミー応答の決定に送信されるデータの特性を用いる場合には、ダミー応答部102、202は、送信されるデータからその特性を取得する。また、ダミー応答の決定に構成情報および稼動情報を用いる場合には、ダミー応答部102、202は、現在(データ送信時)の構成情報および稼動情報を構成情報記憶装置50および稼動情報記憶装置60から取得する。 Next, the dummy response units 102 and 202 acquire data transmitted from the data transmission source (the data processing device 10 or the remote device 20) and acquire response rules from the response rule storage devices 107 and 207 (step S104). ). At this time, the dummy response units 102 and 202 block data transmission. Further, in the case where data already transmitted is used for determining the dummy response, the dummy response units 102 and 202 acquire the data already transmitted from the transmission data storage devices 106 and 206. Further, when using the characteristics of the data to be transmitted for determining the dummy response, the dummy response units 102 and 202 acquire the characteristics from the transmitted data. When the configuration information and the operation information are used for determining the dummy response, the dummy response units 102 and 202 store the current configuration information and the operation information (at the time of data transmission) as the configuration information storage device 50 and the operation information storage device 60. Get from.
 次にダミー応答部102、202は、ステップS104で取得された応答ルールから送信されるデータに対応するダミー応答の内容を決定し、データの送信元(データ処理装置10又はリモート装置20)に送信する(ステップS105)。ダミー応答の決定に既に送信されたデータ、送信されるデータの特性、構成情報および稼動情報を用いる場合には、ダミー応答部102、202は、送信されるデータおよび応答ルールに加えてこれらの情報に基づいてダミー応答の内容を決定する。 Next, the dummy response units 102 and 202 determine the content of the dummy response corresponding to the data transmitted from the response rule acquired in step S104, and transmit it to the data transmission source (data processing device 10 or remote device 20). (Step S105). When data already transmitted, characteristics of transmitted data, configuration information, and operation information are used to determine the dummy response, the dummy response units 102 and 202 add these information in addition to the transmitted data and response rules. The content of the dummy response is determined based on the above.
 通信監視部103、203は、データ処理装置10およびリモート装置20の間の通信状態を再び判定する(ステップS106)。図4のフローチャートではステップS106の通信状態の判定はステップS104~S105のダミー応答の後に行われているが、ステップS104~S105およびステップS106は並列で行われてもよい。通信状態が所定の基準を満たさない場合には(ステップS107のNO)、通信監視部103、203は通信状態が悪いと判定し、ステップS104に戻ってダミー応答が継続される。 The communication monitoring units 103 and 203 determine again the communication state between the data processing device 10 and the remote device 20 (step S106). In the flowchart of FIG. 4, the determination of the communication state in step S106 is performed after the dummy response in steps S104 to S105, but steps S104 to S105 and step S106 may be performed in parallel. When the communication state does not satisfy the predetermined standard (NO in step S107), the communication monitoring units 103 and 203 determine that the communication state is bad, and return to step S104 to continue the dummy response.
 通信状態が所定の基準を満たす場合には(ステップS107のYES)、通信監視部103、203は、通信状態が良い(回復した)と判定し、ダミー応答部102、202へダミー応答を終了する指示を行う(ステップS108)。 If the communication state satisfies a predetermined standard (YES in step S107), the communication monitoring units 103 and 203 determine that the communication state is good (recovered), and end the dummy response to the dummy response units 102 and 202. An instruction is given (step S108).
 データ処理装置10およびリモート装置20の一方から他方への通信が終了していない場合には(ステップS109のNO)、ステップS101に戻って処理が繰り返される。データ処理装置10およびリモート装置20の一方から他方への通信が終了した場合には(ステップS109のYES)、処理が終了される。図4のフローチャートではステップS109の通信終了の判定はステップS108の後に行われているが、ステップS101~S108のうち任意のタイミングで行われてもよい。 If communication from one of the data processing device 10 and the remote device 20 to the other has not ended (NO in step S109), the process returns to step S101 and is repeated. When communication from one of the data processing device 10 and the remote device 20 to the other ends (YES in step S109), the processing ends. In the flowchart of FIG. 4, the determination of the end of communication in step S109 is performed after step S108, but may be performed at any timing among steps S101 to S108.
 以下では、本実施形態で用いられる応答ルールを学習するための応答学習装置40および応答学習方法を説明する。図5は、本実施形態に係る応答学習装置40の概略構成図である。応答学習装置40の概略構成図は、コンピュータであり、CPU41と、メモリ43と、記憶装置44と、インタフェース45とを備える。CPU41、メモリ43、記憶装置44およびインタフェース45は、システムバス42によって接続される。応答学習装置40は独立した装置でよく、あるいは他の装置と一体に構成されてよい。 Hereinafter, the response learning device 40 and the response learning method for learning the response rule used in the present embodiment will be described. FIG. 5 is a schematic configuration diagram of the response learning device 40 according to the present embodiment. The schematic configuration diagram of the response learning device 40 is a computer, and includes a CPU 41, a memory 43, a storage device 44, and an interface 45. The CPU 41, the memory 43, the storage device 44, and the interface 45 are connected by a system bus 42. The response learning device 40 may be an independent device, or may be configured integrally with other devices.
 CPU41、システムバス42、メモリ43、記憶装置44およびインタフェース45の構成は、図2のCPU11、システムバス12、メモリ13、記憶装置14およびインタフェース15と同様である。インタフェース45は、ネットワーク70に接続される。 The configurations of the CPU 41, the system bus 42, the memory 43, the storage device 44, and the interface 45 are the same as those of the CPU 11, the system bus 12, the memory 13, the storage device 14, and the interface 15 in FIG. The interface 45 is connected to the network 70.
 図6は本実施形態に係る応答学習装置40によって実行される応答学習方法のフローチャートを示す図である。応答学習装置40のCPU41は、記憶装置44に記録されたプログラムを実行することによって、図6のフローチャートに示す応答学習方法を実行する。図6のフローチャートは、例えば利用者によって開始の指示が行われた場合に開始される。あるいは図6のフローチャートは、データ処理装置10およびリモート装置20の間の通信が開始した場合に自動的に開始されてもよい。 FIG. 6 is a view showing a flowchart of a response learning method executed by the response learning device 40 according to the present embodiment. The CPU 41 of the response learning device 40 executes the response learning method shown in the flowchart of FIG. 6 by executing the program recorded in the storage device 44. The flowchart in FIG. 6 is started when a start instruction is given by the user, for example. Alternatively, the flowchart of FIG. 6 may be automatically started when communication between the data processing device 10 and the remote device 20 is started.
 まず、CPU41は、データの送信元(データ処理装置10およびリモート装置20の一方)から送信されるデータを取得するとともに、該データの送信先(データ処理装置10およびリモート装置20の他方)からの該データに対する応答を取得する(ステップS201)。また、応答ルールの生成に送信されるデータの特性を用いる場合には、CPU41は、送信されるデータからその特性を取得する。また、応答ルールの生成に構成情報および稼動情報を用いる場合には、CPU41は、現在(データ送信時)の構成情報および稼動情報を構成情報記憶装置50および稼動情報記憶装置60から取得する。 First, the CPU 41 obtains data transmitted from a data transmission source (one of the data processing device 10 and the remote device 20), and from the data transmission destination (the other of the data processing device 10 and the remote device 20). A response to the data is acquired (step S201). Moreover, when using the characteristic of the data transmitted for the production | generation of a response rule, CPU41 acquires the characteristic from the transmitted data. Further, when the configuration information and the operation information are used for generating the response rule, the CPU 41 acquires the current configuration information and the operation information from the configuration information storage device 50 and the operation information storage device 60 (at the time of data transmission).
 次にCPU41は、ステップS201で取得された送信されるデータおよびその応答から学習を行う(ステップS202)。具体的には、CPU41はステップS201で取得された送信されるデータから、送信されるデータのパターンを生成する。例えば送信されるデータのパターンは、同一の応答に対応する複数の送信されるデータの共通する部分を抽出する(すなわち時間、送信元アドレス、送信先アドレス等の変化しやすい部分を除外する)ことによって生成される。そしてCPU41は、生成された送信されるデータのパターンと該送信されるデータに対応する応答とを関連付けることによって応答ルールを生成し、プロセッサ側通信制御装置100およびデバイス側通信制御装置200に送信する(ステップS203)。また、応答ルールの生成に送信されるデータの特性を用いる場合には、CPU41は、生成された送信されるデータのパターンと、該送信されるデータの特性と、該送信されるデータに対応する応答とを関連付けることによって応答ルールを生成する。また、応答ルールの生成に構成情報および稼動情報を用いる場合には、CPU41は、生成された送信されるデータのパターンと、システムの構成情報および稼動情報と、該送信されるデータに対応する応答とを関連付けることによって応答ルールを生成する。 Next, the CPU 41 performs learning from the transmitted data acquired in step S201 and its response (step S202). Specifically, the CPU 41 generates a pattern of transmitted data from the transmitted data acquired in step S201. For example, in the pattern of data to be transmitted, a common part of a plurality of data to be transmitted corresponding to the same response is extracted (that is, a variable part such as a time, a source address, a destination address, etc. is excluded). Generated by. Then, the CPU 41 generates a response rule by associating the generated pattern of transmitted data with a response corresponding to the transmitted data, and transmits the response rule to the processor-side communication control device 100 and the device-side communication control device 200. (Step S203). In addition, when using the characteristics of the data to be transmitted for generating the response rule, the CPU 41 corresponds to the generated pattern of transmitted data, the characteristics of the transmitted data, and the transmitted data. Generate response rules by associating responses. Further, when the configuration information and the operation information are used for generating the response rule, the CPU 41 generates a pattern of the generated transmitted data, the system configuration information and the operation information, and a response corresponding to the transmitted data. A response rule is generated by associating with.
 プロセッサ側通信制御装置100およびデバイス側通信制御装置200は、ステップS203でそれぞれ受信した応答ルールを応答ルール記憶装置107、207に記録する。具体的な応答の学習方法として、ここに示したものに限られず、実際の送信データおよび応答を学習してダミー応答を生成可能な任意の方法を用いることができる。 The processor side communication control device 100 and the device side communication control device 200 record the response rules received in step S203 in the response rule storage devices 107 and 207, respectively. The specific response learning method is not limited to the one shown here, and any method capable of generating dummy responses by learning actual transmission data and responses can be used.
 データ処理装置10およびリモート装置20の間の通信が終了していない場合には(ステップS204のNO)、ステップS201に戻って処理が繰り返される。データ処理装置10およびリモート装置20の間の通信が終了した場合には(ステップS204のYES)、処理が終了される。 If the communication between the data processing device 10 and the remote device 20 has not ended (NO in step S204), the process returns to step S201 and is repeated. When communication between the data processing device 10 and the remote device 20 is completed (YES in step S204), the processing is terminated.
 このように、データ処理装置10およびリモート装置20の間の正常時の通信を学習して応答ルールを自動的に生成することによって、利用者が応答ルールを定義する手間を削減することができる。 Thus, by learning the normal communication between the data processing device 10 and the remote device 20 and automatically generating a response rule, it is possible to reduce time and effort for the user to define the response rule.
 本実施形態に係る通信システム1は、データが送信される際にデータ処理装置10およびリモート装置20の間の通信状態が悪い場合に、プロセッサ側通信制御装置100又はデバイス側通信制御装置200から該データの送信元であるデータ処理装置10又はリモート装置20へ該データに対応するダミー応答を行う。そのため、データ処理装置10およびリモート装置20の間の通信状態が悪化した場合であっても、通信システム1が異常な状態になることを抑制し、通信システム1の運用を継続することができる。 In the communication system 1 according to the present embodiment, when the communication state between the data processing apparatus 10 and the remote apparatus 20 is poor when data is transmitted, the processor side communication control apparatus 100 or the device side communication control apparatus 200 A dummy response corresponding to the data is sent to the data processing apparatus 10 or the remote apparatus 20 that is the data transmission source. Therefore, even if the communication state between the data processing device 10 and the remote device 20 deteriorates, the communication system 1 can be suppressed from being in an abnormal state, and the operation of the communication system 1 can be continued.
(第2の実施形態)
 第1の実施形態では通信制御装置100、200はデータ処理装置10およびリモート装置20の内部に設けられるが、本実施形態ではデータ処理装置10およびリモート装置20の外部に設けられる。それ以外の構成および処理は第1の実施形態と同様である。
(Second Embodiment)
In the first embodiment, the communication control devices 100 and 200 are provided inside the data processing device 10 and the remote device 20, but in this embodiment, they are provided outside the data processing device 10 and the remote device 20. Other configurations and processes are the same as those in the first embodiment.
 図7は、本実施形態に係るデータ処理装置10およびリモート装置20の概略構成図である。図2の構成とは異なり、プロセッサ側通信制御装置100はインタフェース15を介してデータ処理装置10の外部に接続されており、第1の実施形態において説明した所定の条件が満たされる場合にデータ処理装置10へダミー応答を送信する。デバイス側通信制御装置200はインタフェース25を介してリモート装置20の外部に接続されており、第1の実施形態において説明した所定の条件が満たされる場合にリモート装置20へダミー応答を送信する。プロセッサ側通信制御装置100およびデバイス側通信制御装置200は、ネットワーク70を介して接続される。 FIG. 7 is a schematic configuration diagram of the data processing device 10 and the remote device 20 according to the present embodiment. Unlike the configuration of FIG. 2, the processor-side communication control device 100 is connected to the outside of the data processing device 10 via the interface 15, and data processing is performed when the predetermined condition described in the first embodiment is satisfied. A dummy response is transmitted to the device 10. The device-side communication control device 200 is connected to the outside of the remote device 20 via the interface 25, and transmits a dummy response to the remote device 20 when the predetermined condition described in the first embodiment is satisfied. The processor side communication control apparatus 100 and the device side communication control apparatus 200 are connected via a network 70.
 本実施形態に係る通信システム1は、第1の実施形態と同様の効果を奏することができる。また、インタフェース15およびプロセッサ側通信制御装置100の間、あるいはインタフェース25およびデバイス側通信制御装置200の間で障害が発生した場合にはダミー応答を行うことができないものの、プロセッサ側通信制御装置100およびデバイス側通信制御装置200をデータ処理装置10およびリモート装置20に容易に追加することができる。 The communication system 1 according to the present embodiment can achieve the same effects as those of the first embodiment. Although a dummy response cannot be made when a failure occurs between the interface 15 and the processor side communication control apparatus 100 or between the interface 25 and the device side communication control apparatus 200, the processor side communication control apparatus 100 and The device side communication control device 200 can be easily added to the data processing device 10 and the remote device 20.
(第3の実施形態)
 第1の実施形態では通信制御装置100、200は応答学習装置40とは異なる装置であるが、本実施形態では応答学習装置40が通信制御装置100、200として機能する。それ以外の構成および処理は第1の実施形態と同様である。
(Third embodiment)
In the first embodiment, the communication control devices 100 and 200 are different devices from the response learning device 40, but in this embodiment, the response learning device 40 functions as the communication control devices 100 and 200. Other configurations and processes are the same as those in the first embodiment.
 図8は、本実施形態に係るデータ処理装置10およびリモート装置20の概略構成図である。図2の構成とは異なり、プロセッサ側通信制御装置100およびデバイス側通信制御装置200が省略されている。本実施形態に係る応答学習装置40は、図5~6を用いて説明した応答学習方法を実行する構成を備えるとともに、図3~4を用いて説明した通信制御方法(ダミー応答方法)を実行する構成を備える。すなわち、本実施形態に係る応答学習装置40は、プロセッサ側通信制御装置100およびデバイス側通信制御装置200の機能を実行可能である。 FIG. 8 is a schematic configuration diagram of the data processing device 10 and the remote device 20 according to the present embodiment. Unlike the configuration of FIG. 2, the processor side communication control apparatus 100 and the device side communication control apparatus 200 are omitted. The response learning device 40 according to the present embodiment has a configuration for executing the response learning method described with reference to FIGS. 5 to 6 and executes the communication control method (dummy response method) described with reference to FIGS. The structure to be provided is provided. That is, the response learning device 40 according to the present embodiment can execute the functions of the processor side communication control device 100 and the device side communication control device 200.
 データ処理装置10およびリモート装置20の間の通信状態が悪い場合に、応答学習装置40はデータ処理装置10にダミー応答を行うとともに、リモート装置20にダミー応答を行う。すなわち、データ処理装置10がデータの送信元である場合、およびリモート装置20がデータの送信元である場合の両方において、応答学習装置40は送信元に対応する通信制御装置100、200として機能する。ダミー応答を行う条件およびダミー応答を生成するための応答ルールは第1の実施形態と同様である。 When the communication state between the data processing device 10 and the remote device 20 is poor, the response learning device 40 makes a dummy response to the data processing device 10 and also makes a dummy response to the remote device 20. That is, the response learning device 40 functions as the communication control devices 100 and 200 corresponding to the transmission source both when the data processing device 10 is the data transmission source and when the remote device 20 is the data transmission source. . The conditions for performing the dummy response and the response rules for generating the dummy response are the same as in the first embodiment.
 応答学習装置40は、CPU41がプログラムを実行することによって図3に示すプロセッサ側通信制御装置100およびデバイス側通信制御装置200の各部の機能を実装してもよく、あるいは図3に示すプロセッサ側通信制御装置100およびデバイス側通信制御装置200の各部の機能を実装する電気回路構成を備えてもよい。このような構成により、応答学習装置40は、第1の実施形態における応答学習方法および通信制御方法の両方を実行することができる。 The response learning device 40 may implement the functions of the components of the processor-side communication control device 100 and the device-side communication control device 200 shown in FIG. 3 by the CPU 41 executing a program, or the processor-side communication shown in FIG. You may provide the electric circuit structure which mounts the function of each part of the control apparatus 100 and the device side communication control apparatus 200. FIG. With such a configuration, the response learning device 40 can execute both the response learning method and the communication control method in the first embodiment.
 本実施形態に係る通信システム1は、第1の実施形態と同様の効果を奏することができる。また、インタフェース15および応答学習装置40の間、あるいはインタフェース25および応答学習装置40の間で障害が発生した場合にはダミー応答を行うことができないものの、応答学習装置40のみによって応答学習方法および通信制御方法の両方を実行できるため、低コストかつ容易に導入することができる。 The communication system 1 according to the present embodiment can achieve the same effects as those of the first embodiment. Although a dummy response cannot be performed when a failure occurs between the interface 15 and the response learning device 40 or between the interface 25 and the response learning device 40, the response learning method and communication can be performed only by the response learning device 40. Since both control methods can be executed, it can be easily introduced at low cost.
(その他の実施形態)
 図9は、上述の各実施形態に係る通信制御装置100、200の概略構成図である。図9には、通信制御装置100、200が、通信状態が悪化した場合であってもシステムの継続運用を可能にする装置として機能するための構成例が示されている。通信制御装置100、200は、データ処理装置、およびネットワークを介して前記データ処理装置と通信するリモート装置の間の通信状態を判定する通信監視部103、203と、前記データ処理装置および前記リモート装置のうち一方から他方へデータが送信される際に、前記通信状態が所定の基準を満たさない場合に、前記データの送信元に対して、前記データに対する応答を行うダミー応答部102、202(応答部)と、を備える。
(Other embodiments)
FIG. 9 is a schematic configuration diagram of the communication control devices 100 and 200 according to the above-described embodiments. FIG. 9 shows a configuration example for the communication control devices 100 and 200 to function as devices that enable continuous operation of the system even when the communication state deteriorates. Communication control devices 100 and 200 include communication monitoring units 103 and 203 that determine a communication state between a data processing device and a remote device that communicates with the data processing device via a network, and the data processing device and the remote device. When data is transmitted from one to the other, if the communication state does not satisfy a predetermined standard, dummy response units 102 and 202 (responses) that respond to the data to the data transmission source Part).
 本発明は、上述の実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲において適宜変更可能である。 The present invention is not limited to the above-described embodiment, and can be appropriately changed without departing from the spirit of the present invention.
 上述の実施形態の機能を実現するように該実施形態の構成を動作させるプログラム(より具体的には、図4、6に示す処理をコンピュータに実行させる通信制御プログラム、応答学習プログラム)を記録媒体に記録させ、該記録媒体に記録されたプログラムをコードとして読み出し、コンピュータにおいて実行する処理方法も各実施形態の範疇に含まれる。すなわち、コンピュータ読取可能な記録媒体も各実施形態の範囲に含まれる。また、上述のプログラムが記録された記録媒体はもちろん、そのプログラム自体も各実施形態に含まれる。 A recording medium that stores a program (more specifically, a communication control program or a response learning program that causes a computer to execute the processes illustrated in FIGS. 4 and 6) that operates the configuration of the embodiment so as to realize the functions of the embodiment described above. The processing method of recording the program on the recording medium, reading the program recorded on the recording medium as a code, and executing the program on a computer is also included in the category of each embodiment. That is, a computer-readable recording medium is also included in the scope of each embodiment. In addition to the recording medium on which the above program is recorded, the program itself is included in each embodiment.
 該記録媒体としては例えばフロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、CD-ROM、磁気テープ、不揮発性メモリカード、ROMを用いることができる。また該記録媒体に記録されたプログラム単体で処理を実行しているものに限らず、他のソフトウェア、拡張ボードの機能と共同して、OS上で動作して処理を実行するものも各実施形態の範疇に含まれる。 As the recording medium, for example, a floppy (registered trademark) disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a magnetic tape, a nonvolatile memory card, and a ROM can be used. Further, the embodiment is not limited to the processing executed by a single program recorded in the recording medium, and the embodiments that execute processing by operating on the OS in cooperation with other software and the function of the expansion board are also described in each embodiment. Included in the category.
 上述の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。 Some or all of the above-described embodiments can be described as in the following supplementary notes, but are not limited thereto.
(付記1)
 データ処理装置、およびネットワークを介して前記データ処理装置と通信するリモート装置の間の通信状態を判定するステップと、
 前記データ処理装置および前記リモート装置のうち一方から他方へデータが送信される際に、前記通信状態が所定の基準を満たさない場合に、前記データの送信元に対応する通信制御装置から前記送信元に対して、前記データに対する応答を行うステップと、
 を備える通信制御方法。
(Appendix 1)
Determining a communication state between the data processing device and a remote device communicating with the data processing device via a network;
When data is transmitted from one of the data processing device and the remote device to the other, and the communication state does not satisfy a predetermined standard, from the communication control device corresponding to the data transmission source to the transmission source Responding to the data,
A communication control method comprising:
(付記2)
 前記応答を行うステップにおいて、前記通信制御装置は、前記送信元に対して前記応答を行うとともに、前記データの送信先への前記データの送信を遮断することを特徴とする、付記1に記載の通信制御方法。
(Appendix 2)
In the step of performing the response, the communication control device performs the response to the transmission source and blocks transmission of the data to a transmission destination of the data. Communication control method.
(付記3)
 前記応答を行うステップにおいて、前記通信制御装置は、前記通信状態が前記所定の基準を満たさなくなった時間を含む所定の時間範囲に送信される前記データに基づいて前記応答を行うことを特徴とする、付記1又は2に記載の通信制御方法。
(Appendix 3)
In the step of performing the response, the communication control device performs the response based on the data transmitted in a predetermined time range including a time when the communication state no longer satisfies the predetermined standard. The communication control method according to appendix 1 or 2.
(付記4)
 前記応答を行うステップにおいて、前記通信制御装置は、前記データおよび前記応答を関連付けるルールに従って前記応答を行うことを特徴とする、付記1~3のいずれか一項に記載の通信制御方法。
(Appendix 4)
The communication control method according to any one of appendices 1 to 3, wherein, in the step of performing the response, the communication control device performs the response according to a rule that associates the data and the response.
(付記5)
 前記ルールは、前記データに加えて、前記データ処理装置および前記リモート装置を含むシステムの構成情報、該システムの稼動情報、および前記データの特性のうち少なくとも1つを、前記応答に関連付けることを特徴とする、付記4に記載の通信制御方法。
(Appendix 5)
The rule associates, in addition to the data, at least one of configuration information of a system including the data processing device and the remote device, operation information of the system, and characteristics of the data with the response. The communication control method according to appendix 4.
(付記6)
 前記通信状態が前記所定の基準を満たす場合の前記データ処理装置および前記リモート装置の間の通信から前記ルールを学習するステップをさらに備えることを特徴とする、付記4又は5に記載の通信制御方法。
(Appendix 6)
The communication control method according to appendix 4 or 5, further comprising the step of learning the rule from communication between the data processing device and the remote device when the communication state satisfies the predetermined criterion. .
(付記7)
 前記応答を行うステップは、前記データ処理装置および前記リモート装置の間の通信の応答時間、速度およびエラー率の少なくとも1つが前記所定の基準を満たさない場合に、前記応答を行うことを特徴とする、付記1~6のいずれか一項に記載の通信制御方法。
(Appendix 7)
The step of performing the response performs the response when at least one of a response time, a speed, and an error rate of communication between the data processing device and the remote device does not satisfy the predetermined criterion. The communication control method according to any one of appendices 1 to 6.
(付記8)
 前記リモート装置には、前記データ処理装置によって前記ネットワークを介して制御される入出力デバイスが接続され、
 前記データは、前記データ処理装置のプロセッサと前記入出力デバイスとの間で送受信されることを特徴とする、付記1~7のいずれか一項に記載の通信制御方法。
(Appendix 8)
An input / output device controlled via the network by the data processing device is connected to the remote device,
The communication control method according to any one of appendices 1 to 7, wherein the data is transmitted and received between a processor of the data processing device and the input / output device.
(付記9)
 前記通信制御装置は、前記データ処理装置および前記リモート装置の少なくとも一方に設けられることを特徴とする、付記1~8のいずれか一項に記載の通信制御方法。
(Appendix 9)
The communication control method according to any one of appendices 1 to 8, wherein the communication control device is provided in at least one of the data processing device and the remote device.
(付記10)
 前記通信制御装置は、前記データ処理装置および前記リモート装置の間の前記ネットワークに設けられることを特徴とする、付記1~8のいずれか一項に記載の通信制御方法。
(Appendix 10)
The communication control method according to any one of appendices 1 to 8, wherein the communication control device is provided in the network between the data processing device and the remote device.
(付記11)
 コンピュータに、
 データ処理装置、およびネットワークを介して前記データ処理装置と通信するリモート装置の間の通信状態を判定するステップと、
 前記データ処理装置および前記リモート装置のうち一方から他方へデータが送信される際に、前記通信状態が所定の基準を満たさない場合に、前記データの送信元に対応する通信制御装置から前記送信元に対して、前記データに対する応答を行うステップと、
 を実行させる通信制御プログラムが記録された記録媒体。
(Appendix 11)
On the computer,
Determining a communication state between the data processing device and a remote device communicating with the data processing device via a network;
When data is transmitted from one of the data processing device and the remote device to the other, and the communication state does not satisfy a predetermined standard, from the communication control device corresponding to the data transmission source to the transmission source Responding to the data,
A recording medium on which a communication control program for executing is recorded.
(付記12)
 データ処理装置、およびネットワークを介して前記データ処理装置と通信するリモート装置の間の通信状態を判定する通信監視部と、
 前記データ処理装置および前記リモート装置のうち一方から他方へデータが送信される際に、前記通信状態が所定の基準を満たさない場合に、前記データの送信元に対して、前記データに対する応答を行う応答部と、
 を備える通信制御装置。
(Appendix 12)
A communication monitoring unit for determining a communication state between a data processing device and a remote device communicating with the data processing device via a network;
When data is transmitted from one of the data processing device and the remote device to the other, if the communication state does not satisfy a predetermined standard, a response to the data is made to the data transmission source A response unit;
A communication control device comprising:
 この出願は、2017年6月6日に出願された日本出願特願2017-111395を基礎とする優先権を主張し、その開示の全てをここに取り込む。 This application claims priority based on Japanese Patent Application No. 2017-111395 filed on June 6, 2017, the entire disclosure of which is incorporated herein.
 10 データ処理装置
 20 リモート装置
 100、200 通信制御装置
 102、202 ダミー応答部
 103、203 通信監視部
10 Data processing device 20 Remote device 100, 200 Communication control device 102, 202 Dummy response unit 103, 203 Communication monitoring unit

Claims (12)

  1.  データ処理装置、およびネットワークを介して前記データ処理装置と通信するリモート装置の間の通信状態を判定するステップと、
     前記データ処理装置および前記リモート装置のうち一方から他方へデータが送信される際に、前記通信状態が所定の基準を満たさない場合に、前記データの送信元に対応する通信制御装置から前記送信元に対して、前記データに対する応答を行うステップと、
     を備える通信制御方法。
    Determining a communication state between the data processing device and a remote device communicating with the data processing device via a network;
    When data is transmitted from one of the data processing device and the remote device to the other, and the communication state does not satisfy a predetermined standard, from the communication control device corresponding to the data transmission source to the transmission source Responding to the data,
    A communication control method comprising:
  2.  前記応答を行うステップにおいて、前記通信制御装置は、前記送信元に対して前記応答を行うとともに、前記データの送信先への前記データの送信を遮断することを特徴とする、請求項1に記載の通信制御方法。 The step of performing the response, wherein the communication control device performs the response to the transmission source and blocks transmission of the data to a transmission destination of the data. Communication control method.
  3.  前記応答を行うステップにおいて、前記通信制御装置は、前記通信状態が前記所定の基準を満たさなくなった時間を含む所定の時間範囲に送信される前記データに基づいて前記応答を行うことを特徴とする、請求項1又は2に記載の通信制御方法。 In the step of performing the response, the communication control device performs the response based on the data transmitted in a predetermined time range including a time when the communication state no longer satisfies the predetermined standard. The communication control method according to claim 1 or 2.
  4.  前記応答を行うステップにおいて、前記通信制御装置は、前記データおよび前記応答を関連付けるルールに従って前記応答を行うことを特徴とする、請求項1~3のいずれか一項に記載の通信制御方法。 The communication control method according to any one of claims 1 to 3, wherein, in the step of performing the response, the communication control device performs the response according to a rule that associates the data and the response.
  5.  前記ルールは、前記データに加えて、前記データ処理装置および前記リモート装置を含むシステムの構成情報、該システムの稼動情報、および前記データの特性のうち少なくとも1つを、前記応答に関連付けることを特徴とする、請求項4に記載の通信制御方法。 The rule associates, in addition to the data, at least one of configuration information of a system including the data processing device and the remote device, operation information of the system, and characteristics of the data with the response. The communication control method according to claim 4.
  6.  前記通信状態が前記所定の基準を満たす場合の前記データ処理装置および前記リモート装置の間の通信から前記ルールを学習するステップをさらに備えることを特徴とする、請求項4又は5に記載の通信制御方法。 The communication control according to claim 4, further comprising a step of learning the rule from communication between the data processing device and the remote device when the communication state satisfies the predetermined criterion. Method.
  7.  前記応答を行うステップは、前記データ処理装置および前記リモート装置の間の通信の応答時間、速度およびエラー率の少なくとも1つが前記所定の基準を満たさない場合に、前記応答を行うことを特徴とする、請求項1~6のいずれか一項に記載の通信制御方法。 The step of performing the response performs the response when at least one of a response time, a speed, and an error rate of communication between the data processing device and the remote device does not satisfy the predetermined criterion. The communication control method according to any one of claims 1 to 6.
  8.  前記リモート装置には、前記データ処理装置によって前記ネットワークを介して制御される入出力デバイスが接続され、
     前記データは、前記データ処理装置のプロセッサと前記入出力デバイスとの間で送受信されることを特徴とする、請求項1~7のいずれか一項に記載の通信制御方法。
    An input / output device controlled via the network by the data processing device is connected to the remote device,
    The communication control method according to any one of claims 1 to 7, wherein the data is transmitted and received between a processor of the data processing apparatus and the input / output device.
  9.  前記通信制御装置は、前記データ処理装置および前記リモート装置の少なくとも一方に設けられることを特徴とする、請求項1~8のいずれか一項に記載の通信制御方法。 The communication control method according to any one of claims 1 to 8, wherein the communication control device is provided in at least one of the data processing device and the remote device.
  10.  前記通信制御装置は、前記データ処理装置および前記リモート装置の間の前記ネットワークに設けられることを特徴とする、請求項1~8のいずれか一項に記載の通信制御方法。 The communication control method according to any one of claims 1 to 8, wherein the communication control device is provided in the network between the data processing device and the remote device.
  11.  コンピュータに、
     データ処理装置、およびネットワークを介して前記データ処理装置と通信するリモート装置の間の通信状態を判定するステップと、
     前記データ処理装置および前記リモート装置のうち一方から他方へデータが送信される際に、前記通信状態が所定の基準を満たさない場合に、前記データの送信元に対応する通信制御装置から前記送信元に対して、前記データに対する応答を行うステップと、
     を実行させる通信制御プログラムが記録された記録媒体。
    On the computer,
    Determining a communication state between the data processing device and a remote device communicating with the data processing device via a network;
    When data is transmitted from one of the data processing device and the remote device to the other, and the communication state does not satisfy a predetermined standard, from the communication control device corresponding to the data transmission source to the transmission source Responding to the data,
    A recording medium on which a communication control program for executing is recorded.
  12.  データ処理装置、およびネットワークを介して前記データ処理装置と通信するリモート装置の間の通信状態を判定する通信監視部と、
     前記データ処理装置および前記リモート装置のうち一方から他方へデータが送信される際に、前記通信状態が所定の基準を満たさない場合に、前記データの送信元に対して、前記データに対する応答を行う応答部と、
     を備える通信制御装置。
    A communication monitoring unit for determining a communication state between a data processing device and a remote device communicating with the data processing device via a network;
    When data is transmitted from one of the data processing device and the remote device to the other, if the communication state does not satisfy a predetermined standard, a response to the data is made to the data transmission source A response unit;
    A communication control device comprising:
PCT/JP2018/021162 2017-06-06 2018-06-01 Communication control method, recording medium, and communication control apparatus WO2018225641A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017-111395 2017-06-06
JP2017111395A JP7009786B2 (en) 2017-06-06 2017-06-06 Communication control methods, programs and devices

Publications (1)

Publication Number Publication Date
WO2018225641A1 true WO2018225641A1 (en) 2018-12-13

Family

ID=64566726

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/021162 WO2018225641A1 (en) 2017-06-06 2018-06-01 Communication control method, recording medium, and communication control apparatus

Country Status (2)

Country Link
JP (1) JP7009786B2 (en)
WO (1) WO2018225641A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7318423B2 (en) * 2019-08-30 2023-08-01 富士通株式会社 COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL METHOD AND COMMUNICATION CONTROL PROGRAM

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008108144A1 (en) * 2007-03-08 2008-09-12 Nec Corporation Pseudo-response frame communication system, pseudo-response frame communication method, and pseudo-response frame transmitting device
JP2009060509A (en) * 2007-09-03 2009-03-19 Fujitsu Ltd Radio communication driver program, radio communication terminal, and radio communication interface control method
WO2012066622A1 (en) * 2010-11-15 2012-05-24 富士通株式会社 Access method, and multi-core processor system
JP2015095781A (en) * 2013-11-12 2015-05-18 三菱電機株式会社 Communication test device, communication test method, and program
JP2017091323A (en) * 2015-11-12 2017-05-25 京セラドキュメントソリューションズ株式会社 Communication device and image formation device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008108144A1 (en) * 2007-03-08 2008-09-12 Nec Corporation Pseudo-response frame communication system, pseudo-response frame communication method, and pseudo-response frame transmitting device
JP2009060509A (en) * 2007-09-03 2009-03-19 Fujitsu Ltd Radio communication driver program, radio communication terminal, and radio communication interface control method
WO2012066622A1 (en) * 2010-11-15 2012-05-24 富士通株式会社 Access method, and multi-core processor system
JP2015095781A (en) * 2013-11-12 2015-05-18 三菱電機株式会社 Communication test device, communication test method, and program
JP2017091323A (en) * 2015-11-12 2017-05-25 京セラドキュメントソリューションズ株式会社 Communication device and image formation device

Also Published As

Publication number Publication date
JP2018206105A (en) 2018-12-27
JP7009786B2 (en) 2022-01-26

Similar Documents

Publication Publication Date Title
US10986171B2 (en) Method for unified communication of server, baseboard management controller, and server
US10419239B2 (en) Switch dependent teaming for high availability of virtual network functions
US8214528B2 (en) Address identifier scaling in converged networks
CN103621027B (en) Communication route control system and communication route control method
CN106959935B (en) Method compatible with I2C communication and IPMB communication
EP2339792A1 (en) Method for accessing USB device attached to home gateway, home gateway and terminal
CN104579727A (en) Method and device for managing network connection of network nodes
CN110868278B (en) Method for dual-computer redundancy of communication front-end processor of rail transit comprehensive monitoring system
TWI445374B (en) Remote management system and remote management method
JP6172262B2 (en) Information processing device
WO2018225641A1 (en) Communication control method, recording medium, and communication control apparatus
US9882737B2 (en) Network system
JP2008131614A (en) Communication device processing operation administration and maintenance frame, data structure, and program
US20150350014A1 (en) Networking implementation using a converged high speed input/output fabric technology
JP2006074792A (en) Repeater apparatus for supporting multiple protocols, and method for controlling protocol conversion in the repeater apparatus
TWI799179B (en) Computing systems and methods for management of a network device
WO2018196223A1 (en) Data processing method and relevant device
KR102220636B1 (en) Method for frame communication with gate and node field added
JP6000231B2 (en) Network system, always-on connection method, electronic device, always-on server, application server, program
JP2002063129A (en) System for managing device, and method for the same
JP4377033B2 (en) Data transfer control method and apparatus
US20090031045A1 (en) Information relay device, information relay method, information relay program and information recording medium
JP2012098875A (en) Data transfer circuit and data transfer system
US11281599B2 (en) Shared peripheral devices
JP6785009B2 (en) Communication device and control method of communication device

Legal Events

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

Ref document number: 18812696

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18812696

Country of ref document: EP

Kind code of ref document: A1