KR102170160B1 - Apparatus and method for unidirectional data transmission based on opc-ua - Google Patents
Apparatus and method for unidirectional data transmission based on opc-ua Download PDFInfo
- Publication number
- KR102170160B1 KR102170160B1 KR1020170076658A KR20170076658A KR102170160B1 KR 102170160 B1 KR102170160 B1 KR 102170160B1 KR 1020170076658 A KR1020170076658 A KR 1020170076658A KR 20170076658 A KR20170076658 A KR 20170076658A KR 102170160 B1 KR102170160 B1 KR 102170160B1
- Authority
- KR
- South Korea
- Prior art keywords
- opc
- proxy
- data
- server
- transmission
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0281—Proxies
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
Abstract
OPC-UA 기반의 단방향 데이터 송신 장치 및 방법이 개시된다. 본 발명에 따른 OPC-UA 서버의 데이터를 OPC-UA 클라이언트로 전송하는 단방향 데이터 송신 장치는, 상기 OPC-UA 서버로부터 관리 대상 노드의 정보를 수신하고, 상기 OPC-UA 서버로 관리 대상 노드에 상응하는 데이터를 요청하여, 상기 관리 대상 노드에 상응하는 실시간 데이터 및 히스토리컬 데이터를 수신하는 송신 프록시, 그리고 상기 송신 프록시로부터 상기 관리 대상 노드의 정보를 수신하여 OPC-UA 서버 프록시를 구축하고, 상기 송신 프록시로부터 상기 실시간 데이터 및 상기 히스토리컬 데이터를 수신하며, 구축된 상기 OPC-UA 서버 프록시를 이용하여 상기 관리 대상 노드에 대한 상기 실시간 데이터 및 상기 히스토리컬 데이터의 업데이트를 수행하고, 상기 OPC-UA 클라이언트의 요청에 상응하는 데이터를 상기 OPC-UA 클라이언트로 전송하는 수신 프록시를 포함한다. Disclosed is an OPC-UA based one-way data transmission apparatus and method. One-way data transmission apparatus for transmitting data from an OPC-UA server to an OPC-UA client according to the present invention receives information of a management target node from the OPC-UA server, and corresponds to a management target node by the OPC-UA server. A transmission proxy for receiving real-time data and historical data corresponding to the management target node by requesting the data to be managed, and the management target node information from the transmission proxy to establish an OPC-UA server proxy, and the transmission Receives the real-time data and the historical data from a proxy, and updates the real-time data and the historical data for the management target node using the established OPC-UA server proxy, and the OPC-UA client It includes a receiving proxy for transmitting data corresponding to the request of the OPC-UA client.
Description
본 발명은 단방향 데이터 전송 환경에서 OPC-UA 서버와 클라이언트간의 단방향 데이터 송수신 기술에 관한 것으로, 특히, 안전 영역의 OPC-UA 서버 데이터를 비안전 영역의 OPC-UA 클라이언트로 안전하게 전송하는 OPC-UA 데이터의 단방향 송신 기술에 관한 것이다.The present invention relates to a one-way data transmission and reception technology between an OPC-UA server and a client in a one-way data transmission environment, and in particular, OPC-UA data for safely transmitting OPC-UA server data in a safe area to an OPC-UA client in a non-secure area. It relates to one-way transmission technology.
망분리 기술은 외부로부터의 해킹 및 보안 사고에 의한 중요 데이터의 유출을 방지하기 위하여, 내부망(업무망)과 외부망(인터넷망)을 분리하는 기술이다. 망분리 기술을 적용할 경우 보안 측면에서는 안전한 환경을 만들 수 있으나, 두 망 간 데이터의 교환이 불가능해지므로 업무 효율성이 저하된다. 따라서, 업무의 연속성을 확보하기 위한 수단으로 망 연계 기술의 도입이 필요하다. Network separation technology is a technology that separates an internal network (business network) and an external network (internet network) to prevent leakage of important data due to external hacking and security incidents. If the network separation technology is applied, a safe environment can be created in terms of security, but work efficiency is degraded because data exchange between the two networks becomes impossible. Therefore, it is necessary to introduce network linkage technology as a means to ensure business continuity.
안전한 제어망 연동 기법으로는 물리적 연결선 차단을 통한 단방향 네트워크 연결 기술이 있다. 물리적 단방향 보안 게이트웨이는 정보 전달이 필요한 두 시스템 사이에 단방향으로만 정보가 전달되도록 각 송수신 회선의 한 쪽을 물리적으로 차단한 전용 하드웨어 기반의 데이터 전송 시스템이다. As a safe control network interworking technique, there is a one-way network connection technology through physical connection line blocking. The physical one-way security gateway is a dedicated hardware-based data transmission system that physically blocks one side of each transmission/reception line so that information is transmitted only in one direction between two systems requiring information transmission.
물리적 단방향 보안 게이트웨이는 두 네트워크 영역 사이에 위치하며, 제어망과 같은 보안 등급이 높은 영역(안전 영역)의 정보는 외부(비안전 영역)로 전달하며, 동시에 비안전영역으로부터의 정보는 물리적으로 차단함으로써, 안전 영역의 보안을 유지할 수 있다. The physical one-way security gateway is located between the two network areas, and information from areas with high security levels (safe areas) such as the control network is transferred to the outside (non-secure areas), while at the same time physically blocking information from non-secure areas By doing so, it is possible to maintain the security of the safe area.
기존의 TCP 와 같은 양방향 프로토콜을 사용하는 네트워크 환경에 단방향 보안 게이트웨이를 도입하기 위해서는, 세션 정보의 유지, 응용 계층의 동작 지원 문제 등 많은 제약 사항이 있다. 오늘날 기술의 개발로 이러한 문제들이 해결되는 추세이나 대부분 물리적 침투 경로 차단, 데이터 전송의 신뢰성 향상, 지원 가능한 프로토콜의 증가에 초점을 맞추고 있어, 현장 적용을 위해서는 기존 망 정보 변경과 같은 다양한 제약 사항이 추가적으로 존재한다. In order to introduce a one-way security gateway to a network environment that uses a two-way protocol such as the existing TCP, there are many limitations such as maintenance of session information and support for operation of the application layer. Today's technology development tends to solve these problems, but most of them are focusing on blocking physical penetration paths, improving the reliability of data transmission, and increasing the number of supported protocols.For field application, various restrictions such as change of existing network information are additionally required. exist.
즉, 단방향 데이터 전송 장치가 기존 망들의 중간에 위치하여 기존의 망 정보가 소실되면서 단방향 데이터 전송 장치의 정보로 변조되는 경우가 존재한다. 그러나, 이러한 방식은 기존 망 정보의 변경을 필요로 하므로, 기존의 망 정보는 그대로 유지하면서 단방향 데이터 전달을 수행해주는 기법이 요구된다. That is, there is a case where the unidirectional data transmission device is located in the middle of the existing networks, and the existing network information is lost and is modulated with information of the unidirectional data transmission device. However, since this method requires modification of the existing network information, a method of performing one-way data transfer while maintaining the existing network information is required.
한편, 단방향 데이터 전송 장치가 적용되는 대표적인 환경으로는 주요 기반 시설에서 운영되는 제어망이 있다. 제어망은 대부분 외부 연결망에서 분리 폐쇄망의 데이터를 모니터링하는 형태로, 제어망에 적합한 다양한 응용 계층의 제어 프로토콜을 통해 수행된다. On the other hand, as a representative environment to which the unidirectional data transmission device is applied, there is a control network operated in a major infrastructure. Most of the control networks are in the form of monitoring the data of the separated closed network in the external network, and are performed through the control protocol of various application layers suitable for the control network.
다양한 제어 시스템 공급업자에 따른 다양한 제어 통신 프로토콜이 사용됨에 따라, 서로 다른 공급자의 인터페이스 간 상호 운용성을 위한 산업 규격인 OPC(OLE for Process Control) 표준이 설계되었다. OPC UA(OLE for Process Control Unified Architecture)는 IEC TC57 그룹에서 IEC62541로 표준화한 산업용 데이터 통신 표준으로, Classic OPC(OPC DA, OPC HDA, OPC A&E)의 기능을 통합하고, 추가적인 서비스를 제공하여, 기존의 제약사항을 해결하였다. OPC UA는 독립적인 플랫폼으로 사용 가능하고, Internet 표준과 IP 기반의 프로토콜을 채택하고 있으며, 기본적으로 서버, 클라이언트 형태로 동작한다. As various control communication protocols according to various control system suppliers are used, the OPC (OLE for Process Control) standard, which is an industry standard for interoperability between interfaces of different suppliers, was designed. OPC UA (OLE for Process Control Unified Architecture) is an industrial data communication standard standardized to IEC62541 by the IEC TC57 group. It integrates the functions of Classic OPC (OPC DA, OPC HDA, OPC A&E) and provides additional services. The limitations of OPC UA can be used as an independent platform, adopts Internet standard and IP-based protocol, and basically operates in the form of server and client.
OPC UA 서버는 분리 폐쇄망 형태로 운영되는 제어망 내부의 PLC, IED, RTU와 같은 필드 디바이스와의 통합 인터페이스를 통해서 정보를 수집 및 저장한다. 그리고 OPC UA 클라이언트는 OPC UA 통신 표준에 따라 해당 정보를 모니터링한다. The OPC UA server collects and stores information through an integrated interface with field devices such as PLC, IED, and RTU inside the control network operated in the form of a separate closed network. And the OPC UA client monitors the information according to the OPC UA communication standard.
따라서, OPC UA 통신 표준에 따른 단방향 데이터 전송 방식을 제공하기 위해서는, OPC UA 서버와 OPC UA 클라이언트 간에 전달되는 데이터 특성에 적합한 포괄적인 프록시 구현이 이루어져야 한다. 또한, 실제 OPC UA 클라이언트와 OPC UA 서버 간의 기존 설정이나 동작을 변경하지 않고 OPC UA 기반의 안전 영역 데이터를 비안전 영역으로 효과적으로 전달해 주기 위한 기술의 개발이 필요하다. Therefore, in order to provide a one-way data transmission method according to the OPC UA communication standard, a comprehensive proxy implementation suitable for the data characteristics transmitted between the OPC UA server and the OPC UA client must be implemented. In addition, it is necessary to develop a technology to effectively transmit OPC UA-based safe area data to non-safe areas without changing the existing settings or operations between the actual OPC UA client and the OPC UA server.
본 발명의 목적은 분리 폐쇄망인 안전 영역에 대한 외부의 침입은 원천적으로 봉쇄하면서, 비안전 영역으로 OPC UA 기반의 데이터를 효율적으로 전달하는 것이다. An object of the present invention is to efficiently transmit OPC UA-based data to an unsafe area while fundamentally blocking external intrusions into a safe area, which is a separated and closed network.
또한, 본 발명의 목적은 기존 OPC UA 서버 및 OPC UA 클라이언트에 대한 별도의 설정 변경 없이, 유실 가능성이 있는 히스토리컬 데이터에 대한 전송 신뢰성을 보장하는 것이다. In addition, it is an object of the present invention to ensure transmission reliability for historical data that may be lost without changing separate settings for the existing OPC UA server and OPC UA client.
또한, 본 발명의 목적은 전송 신뢰성을 보장하여, 안전 영역에서 비안전 영역으로 OPC UA 기반 단방향 데이터를 효율적으로 전달할 수 있도록 하는 것이다. In addition, it is an object of the present invention to ensure transmission reliability, so that OPC UA-based one-way data can be efficiently transferred from a safe area to a non-secure area.
또한, 본 발명의 목적은 주요 기반 시설 내의 OPC UA 서버는 보호하면서, 효과적으로 모니터링 할 수 있도록 하는 것이다. In addition, an object of the present invention is to enable effective monitoring while protecting the OPC UA server in the main infrastructure.
상기한 목적을 달성하기 위한 본 발명에 따른 OPC-UA 서버의 데이터를 OPC-UA 클라이언트로 전송하는 단방향 데이터 송신 장치는 상기 OPC-UA 서버로부터 관리 대상 노드의 정보를 수신하고, 상기 OPC-UA 서버로 관리 대상 노드에 상응하는 데이터를 요청하여, 상기 관리 대상 노드에 상응하는 실시간 데이터 및 히스토리컬 데이터를 수신하는 송신 프록시, 그리고 상기 송신 프록시로부터 상기 관리 대상 노드의 정보를 수신하여 OPC-UA 서버 프록시를 구축하고, 상기 송신 프록시로부터 상기 실시간 데이터 및 상기 히스토리컬 데이터를 수신하며, 구축된 상기 OPC-UA 서버 프록시를 이용하여 상기 관리 대상 노드에 대한 상기 실시간 데이터 및 상기 히스토리컬 데이터의 업데이트를 수행하고, 상기 OPC-UA 클라이언트의 요청에 상응하는 데이터를 상기 OPC-UA 클라이언트로 전송하는 수신 프록시를 포함한다. One-way data transmission apparatus for transmitting data of an OPC-UA server to an OPC-UA client according to the present invention for achieving the above object receives information of a management target node from the OPC-UA server, and the OPC-UA server A transmission proxy that requests data corresponding to the management target node and receives real-time data and historical data corresponding to the management target node, and an OPC-UA server proxy by receiving information of the management target node from the transmission proxy. Construct, receive the real-time data and the historical data from the transmission proxy, and update the real-time data and the historical data for the management target node using the established OPC-UA server proxy, And a receiving proxy for transmitting data corresponding to the request of the OPC-UA client to the OPC-UA client.
이때, 상기 실시간 데이터는, OPC DA 데이터, OPC 알람 데이터 및 OPC 이벤트 데이터 중 적어도 어느 하나를 포함하고, 상기 관리 대상 노드의 데이터 변화 시 자동으로 생성되는 데이터일 수 있다. In this case, the real-time data may include at least one of OPC DA data, OPC alarm data, and OPC event data, and may be data automatically generated when data of the management target node changes.
이때, 상기 히스토리컬 데이터는, 상기 송신 프록시의 주기적인 전송 요청에 상응하도록, 상기 OPC-UA 서버로부터 수신한 데이터일 수 있다. In this case, the historical data may be data received from the OPC-UA server to correspond to the periodic transmission request of the transmission proxy.
이때, 상기 송신 프록시는, 요청 주기 및 요청 범위에 상응하는 상기 히스토리컬 데이터의 전송 요청을 상기 OPC-UA 서버로 전송하고, 상기 OPC-UA 서버로부터 상기 전송 요청에 상응하는 상기 히스토리컬 데이터를 수신할 수 있다. At this time, the transmission proxy transmits a request for transmission of the historical data corresponding to a request period and a request range to the OPC-UA server, and receives the historical data corresponding to the transmission request from the OPC-UA server. can do.
이때, 상기 송신 프록시는, 상기 요청 주기에 상응하는 시간마다, 현재 시간을 기준으로 상기 요청 범위에 상응하는 시간 동안의 상기 히스토리컬 데이터의 전송을 요청하는 상기 히스토리컬 데이터의 전송 요청을 상기 OPC-UA 서버로 전송할 수 있다. At this time, the transmission proxy, for each time corresponding to the request period, based on the current time, for a time corresponding to the request range, the transmission request of the historical data requesting the transmission of the OPC- Can be sent to the UA server.
이때, 상기 수신 프록시는, 상기 송신 프록시 및 상기 수신 프록시 중 적어도 어느 하나가 재구동되는 경우, 상기 OPC-UA 서버 프록시를 재구축할 수 있다. In this case, the reception proxy may rebuild the OPC-UA server proxy when at least one of the transmission proxy and the reception proxy is restarted.
이때, 상기 수신 프록시는, 상기 OPC-UA 서버 프록시 구축 시, 상기 OPC-UA 서버 프록시에 상응하는 구축 정보를 저장할 수 있다. In this case, the receiving proxy may store construction information corresponding to the OPC-UA server proxy when constructing the OPC-UA server proxy.
이때, 상기 수신 프록시는, 상기 OPC-UA 서버 프록시의 구축과 관련된 설정 정보를 확인하고, 기 구축된 노드의 정보가 존재하는 경우 상기 구축 정보를 기반으로 상기 OPC-UA 서버 프록시를 재구축하며, 상기 기 구축된 노드의 정보가 존재하지 않는 경우 상기 송신 프록시로부터 노드의 정보를 수신하여 상기 OPC-UA 서버를 재구축할 수 있다. At this time, the receiving proxy checks the setting information related to the establishment of the OPC-UA server proxy, and if there is information on the previously established node, rebuilds the OPC-UA server proxy based on the establishment information, If the previously established node information does not exist, the OPC-UA server may be rebuilt by receiving the node information from the transmission proxy.
이때, 상기 수신 프록시는, 상기 송신 프록시가 재구동되는 경우 상기 OPC-UA 서버 프록시를 재구축하고, 상기 수신 프록시만 재구동되는 경우 선택적으로 상기 OPC-UA 서버 프록시를 재구축할 수 있다. In this case, the receiving proxy may rebuild the OPC-UA server proxy when the transmission proxy is restarted, and selectively rebuild the OPC-UA server proxy when only the receiving proxy is restarted.
이때, 상기 수신 프록시는, 상기 송신 프록시로부터 새로운 노드의 정보를 수신한 경우, 상기 새로운 노드의 정보를 기반으로 상기 OPC-UA 서버 프록시를 재구축할 수 있다. In this case, when the receiving proxy receives information on a new node from the transmission proxy, the OPC-UA server proxy may be rebuilt based on the information on the new node.
또한, 본 발명의 일실시예에 따른 OPC-UA 서버의 데이터를 OPC-UA 클라이언트로 전송하는 OPC-UA 기반의 단방향 데이터 송신 장치에 의해 수행되는 단방향 데이터 송신 방법은 상기 OPC-UA 서버로부터 관리 대상 노드의 정보를 수신하여 OPC-UA 서버 프록시를 구축하는 단계, 상기 OPC-UA 서버로 실시간 데이터를 요청하여 수신하고, 상기 실시간 데이터를 업데이트 하는 단계, 상기 OPC-UA 서버로 히스토리컬 데이터를 요청하여 수신하고, 상기 히스토리컬 데이터를 업데이트 하는 단계, 그리고 상기 OPC-UA 클라이언트의 요청에 상응하도록 상기 OPC-UA 클라이언트로 상기 실시간 데이터 및 상기 히스토리컬 데이터 중 적어도 어느 하나를 포함하는 데이터를 전송하는 단계를 포함한다. In addition, a one-way data transmission method performed by an OPC-UA-based one-way data transmission device for transmitting data from an OPC-UA server to an OPC-UA client according to an embodiment of the present invention is a management target from the OPC-UA server. Receiving node information to establish an OPC-UA server proxy, requesting and receiving real-time data from the OPC-UA server, updating the real-time data, and requesting historical data from the OPC-UA server Receiving, updating the historical data, and transmitting data including at least one of the real-time data and the historical data to the OPC-UA client to correspond to the request of the OPC-UA client. Include.
이때, 상기 OPC-UA 기반의 단방향 데이터 송신 장치는, 상기 OPC-UA 서버에 접속하여 상기 관리 대상 노드의 정보를 수신하는 송신 프록시, 그리고 상기 OPC-UA 서버로부터 수신된 상기 데이터를 상기 OPC-UA 클라이언트로 전송하는 수신 프록시를 포함할 수 있다. At this time, the OPC-UA-based one-way data transmission device includes a transmission proxy for accessing the OPC-UA server to receive information on the management target node, and the OPC-UA server for the data received from the OPC-UA server. It may include a receiving proxy that sends to the client.
이때, 상기 실시간 데이터는, OPC DA 데이터, OPC 알람 데이터 및 OPC 이벤트 데이터 중 적어도 어느 하나를 포함하고, 상기 관리 대상 노드의 데이터 변화 시 자동으로 생성되는 데이터일 수 있다. In this case, the real-time data may include at least one of OPC DA data, OPC alarm data, and OPC event data, and may be data automatically generated when data of the management target node changes.
이때, 상기 히스토리컬 데이터는, 주기적인 상기 히스토리컬 데이터의 전송 요청에 상응하도록, 상기 OPC-UA 서버로부터 수신한 데이터일 수 있다. In this case, the historical data may be data received from the OPC-UA server to correspond to a periodic request for transmission of the historical data.
이때, 상기 히스토리컬 데이터를 업데이트 하는 단계는, 상기 송신 프록시가 요청 주기 및 요청 범위에 상응하는 상기 히스토리컬 데이터의 전송 요청을 상기 OPC-UA 서버로 전송하는 단계, 그리고 상기 송신 프록시가 상기 OPC-UA 서버로부터 상기 전송 요청에 상응하는 상기 히스토리컬 데이터를 수신하는 단계를 포함할 수 있다. At this time, the updating of the historical data includes: transmitting, by the transmission proxy, a transmission request of the historical data corresponding to a request period and a request range to the OPC-UA server, and the transmission proxy is the OPC- It may include the step of receiving the historical data corresponding to the transmission request from the UA server.
이때, 상기 히스토리컬 데이터의 전송 요청을 상기 OPC-UA 서버로 전송하는 단계는, 상기 송신 프록시가 상기 요청 주기에 상응하는 시간마다, 현재 시간을 기준으로 상기 요청 범위에 상응하는 시간 동안의 상기 히스토리컬 데이터의 전송을 요청하는 상기 히스토리컬 데이터의 전송 요청을 상기 OPC-UA 서버로 전송할 수 있다. In this case, the step of transmitting the request for transmission of the historical data to the OPC-UA server includes, by the transmission proxy, the history for a time corresponding to the request range based on the current time at each time corresponding to the request period. The historical data transmission request requesting the transmission of the curl data may be transmitted to the OPC-UA server.
이때, 상기 송신 프록시 및 상기 수신 프록시 중 적어도 어느 하나가 재구동되는 경우, 상기 OPC-UA 서버 프록시를 재구축하는 단계를 더 포함할 수 있다. In this case, when at least one of the transmission proxy and the reception proxy is restarted, the step of rebuilding the OPC-UA server proxy may be further included.
이때, 상기 OPC-UA 서버 프록시 구축 시, 상기 수신 프록시가 상기 OPC-UA 서버 프록시에 상응하는 구축 정보를 저장하는 단계를 더 포함할 수 있다. In this case, when establishing the OPC-UA server proxy, the receiving proxy may further include storing construction information corresponding to the OPC-UA server proxy.
이때, 상기 OPC-UA 서버 프록시를 재구축하는 단계는, 상기 수신 프록시가 상기 OPC-UA 서버 프록시의 구축과 관련된 설정 정보를 확인하는 단계, 기 구축된 노드의 정보가 존재하는 경우 상기 구축 정보를 기반으로 상기 OPC-UA 서버 프록시를 재구축하는 단계, 그리고 상기 기 구축된 노드의 정보가 존재하지 않는 경우 상기 송신 프록시로부터 노드의 정보를 수신하여 상기 OPC-UA 서버를 재구축하는 단계를 포함할 수 있다. In this case, the step of rebuilding the OPC-UA server proxy includes: the receiving proxy confirms setting information related to the establishment of the OPC-UA server proxy, and if information on the previously established node exists, the establishment information is Rebuilding the OPC-UA server proxy on the basis, and rebuilding the OPC-UA server by receiving the node information from the sending proxy when the previously established node information does not exist. I can.
이때, 상기 OPC-UA 서버 프록시를 재구축하는 단계는, 상기 송신 프록시가 재구동되는 경우 상기 OPC-UA 서버 프록시를 재구축하고, 상기 수신 프록시만 재구동되는 경우 선택적으로 상기 OPC-UA 서버 프록시를 재구축할 수 있다. In this case, the step of rebuilding the OPC-UA server proxy may include rebuilding the OPC-UA server proxy when the transmission proxy is restarted, and selectively the OPC-UA server proxy when only the receiving proxy is restarted. Can be rebuilt.
본 발명에 따르면, 분리 폐쇄망인 안전 영역에 대한 외부의 침입은 원천적으로 봉쇄하면서, 비안전 영역으로 OPC UA 기반의 데이터를 효율적으로 전달할 수 있다. According to the present invention, it is possible to efficiently transmit OPC UA-based data to a non-safe area while fundamentally blocking external intrusion into a safe area, which is a separated and closed network.
또한 본 발명에 따르면, 기존 OPC UA 서버 및 OPC UA 클라이언트에 대한 별도의 설정 변경 없이, 유실 가능성이 있는 히스토리컬 데이터에 대한 전송 신뢰성을 보장할 수 있다. In addition, according to the present invention, it is possible to ensure the reliability of transmission of historical data that may be lost without changing separate settings for the existing OPC UA server and OPC UA client.
또한 본 발명에 따르면, 전송 신뢰성을 보장하여, 안전 영역에서 비안전 영역으로 OPC UA 기반 단방향 데이터를 효율적으로 전달할 수 있다. In addition, according to the present invention, transmission reliability is guaranteed, and OPC UA-based one-way data can be efficiently transferred from the safe area to the non-secure area.
또한 본 발명에 따르면, 주요 기반 시설 내의 OPC UA 서버는 보호하면서, 효과적으로 모니터링 할 수 있다. In addition, according to the present invention, the OPC UA server in the main infrastructure can be monitored effectively while protecting it.
도 1은 본 발명의 일실시예에 따른 OPC-UA 기반의 단방향 데이터 송신 장치가 적용되는 환경을 개략적으로 나타낸 도면이다.
도 2는 본 발명의 일실시예에 따른 OPC-UA 기반의 단방향 데이터 송신 장치의 구성을 나타낸 블록도이다.
도 3은 본 발명의 일실시예에 따른 OPC-UA 기반의 단방향 데이터 송신 방법을 설명하기 위한 순서도이다.
도 4는 도 3의 S310 단계에서 OPC-UA 서버 프록시를 구축하는 과정을 나타낸 순서도이다.
도 5는 도 3의 S330 단계에서 히스토리컬 데이터를 업데이트하는 과정을 나타낸 순서도이다.
도 6은 본 발명의 일실시예에 따른 OPC-UA 서버의 히스토리컬 데이터를 나타낸 예시도이다.
도 7은 도 5에서 수신 프록시가 수신한 히스토리컬 데이터를 나타낸 예시도이다.
도 8은 본 발명의 일실시예에 따른 단방향 데이터 전송 환경에서 단방향 데이터를 송신하는 과정을 설명하기 위한 순서도이다.
도 9는 본 발명의 일실시예에 따른 컴퓨터 시스템을 나타낸 블록도이다.1 is a diagram schematically illustrating an environment to which an OPC-UA-based unidirectional data transmission apparatus according to an embodiment of the present invention is applied.
2 is a block diagram showing the configuration of an OPC-UA-based one-way data transmission apparatus according to an embodiment of the present invention.
3 is a flowchart illustrating an OPC-UA-based one-way data transmission method according to an embodiment of the present invention.
4 is a flowchart illustrating a process of building an OPC-UA server proxy in step S310 of FIG. 3.
5 is a flowchart illustrating a process of updating historical data in step S330 of FIG. 3.
6 is an exemplary view showing historical data of an OPC-UA server according to an embodiment of the present invention.
7 is an exemplary diagram showing historical data received by a reception proxy in FIG. 5.
8 is a flow chart illustrating a process of transmitting unidirectional data in a unidirectional data transmission environment according to an embodiment of the present invention.
9 is a block diagram showing a computer system according to an embodiment of the present invention.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 상세하게 설명하고자 한다.In the present invention, various modifications may be made and various embodiments may be provided, and specific embodiments will be illustrated in the drawings and described in detail.
그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.However, this is not intended to limit the present invention to a specific embodiment, it is to be understood to include all changes, equivalents, and substitutes included in the spirit and scope of the present invention.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the present application are only used to describe specific embodiments, and are not intended to limit the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In the present application, terms such as "comprise" or "have" are intended to designate the presence of features, numbers, steps, actions, components, parts, or combinations thereof described in the specification, but one or more other features. It is to be understood that the presence or addition of elements or numbers, steps, actions, components, parts, or combinations thereof, does not preclude in advance.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which the present invention belongs. Terms as defined in a commonly used dictionary should be interpreted as having a meaning consistent with the meaning in the context of the related technology, and should not be interpreted as an ideal or excessively formal meaning unless explicitly defined in the present application. Does not.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.Hereinafter, preferred embodiments of the present invention will be described in more detail with reference to the accompanying drawings. In describing the present invention, in order to facilitate an overall understanding, the same reference numerals are used for the same elements in the drawings, and duplicate descriptions for the same elements are omitted.
도 1은 본 발명의 일실시예에 따른 OPC-UA 기반의 단방향 데이터 송신 장치가 적용되는 단방향 데이터 송수신 시스템의 환경을 개략적으로 나타낸 도면이다. 1 is a diagram schematically showing an environment of a one-way data transmission/reception system to which an OPC-UA-based one-way data transmission apparatus according to an embodiment of the present invention is applied.
도 1에 도시한 바와 같이, 단방향 데이터 송수신 시스템에서, 안전 영역에 위치한 OPC-UA 서버(100)는 실시간 데이터 및 히스토리컬 데이터를 모니터링 및 관리한다. 그리고 OPC-UA 서버(100)는 단방향 데이터 송신 장치(200)를 통하여, 실시간 데이터 및 히스토리컬 데이터를 OPC-UA 클라이언트(300)로 전달한다.1, in the one-way data transmission/reception system, the OPC-
단방향 데이터 송신 장치(200)는 송신측 및 수신측에 대응되는 OPC-UA 서버 및 OPC-UA 클라이언트의 프록시를 배치하여, OPC-UA 서버(100)의 데이터를 OPC-UA 클라이언트(300)로 전달할 수 있다. The one-way
OPC-UA 서버(100)의 데이터는 실시간 데이터 및 히스토리컬 데이터를 포함할 수 있으며, 실시간 데이터는 OPC DA(Data Access) 데이터, OPC 알람 데이터 및 OPC 이벤트 데이터 중 적어도 어느 하나를 포함할 수 있다. 또한, 히스토리컬 데이터 (Historical Data Access, HDA)는 송신 프록시의 주기적인 전송 요청에 상응하도록, OPC-UA 서버(100)로부터 수신한 데이터를 의미할 수 있다. The data of the OPC-
이하에서는 도 2를 통하여 본 발명의 일 실시예에 따른 OPC-UA 기반의 단방향 데이터 송신 장치의 구성에 대하여 더욱 상세하게 설명한다. Hereinafter, the configuration of an OPC-UA-based one-way data transmission apparatus according to an embodiment of the present invention will be described in more detail with reference to FIG. 2.
도 2는 본 발명의 일실시예에 따른 OPC-UA 기반의 단방향 데이터 송신 장치의 구성을 나타낸 블록도이다. 2 is a block diagram showing the configuration of an OPC-UA-based one-way data transmission apparatus according to an embodiment of the present invention.
도 2에 도시한 바와 같이, OPC-UA 기반의 단방향 데이터 송신 장치(200)는 송신 프록시(Send Proxy)(210) 및 수신 프록시(Receive Proxy)(220)를 포함한다. As shown in FIG. 2, the OPC-UA-based one-way
송신 프록시(210)는 OPC-UA 서버(100)로부터 관리 대상 노드의 정보를 수신하고, OPC-UA 서버(100)로 관리 대상 노드에 상응하는 데이터를 요청한다. 또한, 송신 프록시(210)는 OPC-UA 서버(100)로부터 관리 대상 노드에 상응하는 실시간 데이터 및 히스토리컬 데이터를 수신할 수 있다. The
설명의 편의상, 송신 프록시(210)가 OPC-UA 서버(100)로 데이터를 요청한다고 설명하였으나, 송신 프록시(210)는 OPC-UA 서버(100)로 실시간 데이터를 요청하는 과정 및 히스토리컬 데이터를 요청하는 과정을 분리하여, 별개의 과정으로 수행할 수 있다. For convenience of explanation, it has been described that the
특히, 송신 프록시(210)는 요청 주기 및 요청 범위에 상응하는 히스토리컬 데이터의 전송 요청을 OPC-UA 서버(100)로 전송하고, OPC-UA 서버(100)로부터 전송 요청에 상응하는 히스토리컬 데이터를 수신할 수 있다. In particular, the
송신 프록시(210)는 요청 주기에 상응하는 시간마다, 현재 시간을 기준으로 요청 범위에 상응하는 시간 동안의 히스토리컬 데이터의 전송을 요청할 수 있다. 예를 들어, 현재 시간이 오후 4시이고, 요청 범위가 3시간이라고 가정하면, 송신 프록시(210)는 OPC-UA 서버(100)로 오후 1시부터 오후 4시까지 3시간 동안의 히스토리컬 데이터의 전송을 요청할 수 있다. The
다음으로 수신 프록시(220)는 송신 프록시(210)로부터 관리 대상 노드의 정보를 수신하여 OPC-UA 서버 프록시를 구축하고, 송신 프록시(210)로부터 실시간 데이터 및 히스토리컬 데이터를 수신한다. 또한, 수신 프록시(220)는 구축된 OPC-UA 서버 프록시를 이용하여 관리 대상 노드에 대한 실시간 데이터 및 히스토리컬 데이터의 업데이트를 수행할 수 있다. 그리고 수신 프록시(220)는 OPC-UA 클라이언트(300)의 요청에 상응하는 데이터를 OPC-UA 클라이언트(300)로 전송할 수 있다. Next, the
여기서, 실시간 데이터는 OPC DA 데이터, OPC 알람 데이터 및 OPC 이벤트 데이터 중 적어도 어느 하나를 포함할 수 있으며, 관리 대상 노드의 데이터 변화 시 자동으로 생성되는 것일 수 있다. 그리고 히스토리컬 데이터는 송신 프록시(210)의 주기적인 전송 요청에 상응하도록, OPC-UA 서버(100)로부터 수신한 데이터를 의미할 수 있다. Here, the real-time data may include at least one of OPC DA data, OPC alarm data, and OPC event data, and may be automatically generated when data of a management target node changes. In addition, the historical data may mean data received from the OPC-
수신 프록시(220)는 OPC-UA 서버 프록시 구축 시, OPC-UA 서버 프록시에 상응하는 구축 정보를 저장할 수 있다. 그리고 송신 프록시(210) 및 수신 프록시 중 적어도 어느 하나가 재구동되는 경우, 수신 프록시(220)는 OPC-UA 서버 프록시를 재구축할 수 있다. 이때, 수신 프록시(220)는 OPC-UA 서버 프록시의 구축과 관련된 설정 정보를 확인하고, 기 구축된 노드의 정보가 존재하는 경우 구축 정보를 기반으로 OPC-UA 서버 프록시를 재구축할 수 있다. The
반면, 기 구축된 노드의 정보가 존재하지 않는 경우, 수신 프록시(220)는 송신 프록시(210)로부터 노드의 정보를 수신하여 OPC-UA 서버 프록시를 재구축할 수 있다. On the other hand, if the previously established node information does not exist, the receiving
또한, 수신 프록시(220)는 송신 프록시(210)가 재구동되는 경우 OPC-UA 서버 프록시를 재구축하는 반면, 수신 프록시(220)만 재구동되는 경우에는 선택적으로 OPC-UA 서버 프록시를 재구축할 수 있다. 그리고 수신 프록시(220)는 송신 프록시(210)로부터 새로운 노드의 정보를 수신한 경우 새로운 노드의 정보를 기반으로 OPC-UA 서버 프록시를 재구축할 수 있다. In addition, the receiving
이하에서는 도 3 및 도 4를 통하여 본 발명의 일 실시예에 따른 OPC-UA 기반의 단방향 데이터 송신 장치에 의해 수행되는 OPC-UA 기반의 단방향 데이터 송신 방법에 대하여 더욱 상세하게 설명한다. Hereinafter, an OPC-UA-based one-way data transmission method performed by an OPC-UA-based one-way data transmission apparatus according to an embodiment of the present invention will be described in more detail with reference to FIGS. 3 and 4.
도 3은 본 발명의 일실시예에 따른 OPC-UA 기반의 단방향 데이터 송신 방법을 설명하기 위한 순서도이다. 3 is a flowchart illustrating an OPC-UA-based one-way data transmission method according to an embodiment of the present invention.
먼저, OPC-UA 기반의 단방향 데이터 송신 장치(200)는 OPC-UA 서버 프록시를 구축한다(S310). First, the OPC-UA-based one-way
송신 프록시(210)는 OPC-UA 클라이언트 프록시의 역할을 수행하며, 비안전 영역의 OPC-UA 클라이언트(300)와 동일한 방식으로 안전 영역의 OPC-UA 서버(100)에 접속하여 노드의 정보를 요청하고, OPC-UA 서버(100)로부터 노드의 정보를 수신한다. 그리고 송신 프록시(210)는 수신 프록시(220)로 노드의 정보를 전달하여, OPC-UA 서버 프록시를 구축한다. The
이때, OPC-UA 서버 프록시는 안전 영역의 OPC-UA 서버와 동일한 IP 주소를 사용하므로, 비안전 영역의 OPC-UA 클라이언트(300)는 안전 영역의 OPC-UA 서버(100)에 직접 접속하는 것과 실질적으로 동일한 효과를 나타내며, 별도의 설정 변경 없이 OPC-UA 서버(100)에 접속할 수 있다. At this time, the OPC-UA server proxy uses the same IP address as the OPC-UA server in the safe area, so that the OPC-
시스템 유지 보수 등의 이유로, 송신 프록시(210)나 수신 프록시(220)가 재구동될 때, 안전 영역의 OPC-UA 서버(100)와의 동기화 문제를 해결하기 위하여, OPC-UA 기반의 단방향 데이터 송신 장치(200)는 후술할 도 4의 과정을 수행할 수 있다. 이때, 도 4의 과정은 기본적으로 OPC-UA 서버 프록시가 구축되는 수신 프록시(220)에 적용되며, 수신 프록시(220)는 OPC-UA 서버(100)에서 관리되는 노드의 정보를 수신하여, 동일한 기능을 수행하는 OPC-UA 서버 프록시를 구축할 수 있다.OPC-UA-based one-way data transmission in order to solve the synchronization problem with the OPC-
도 4는 도 3의 S310 단계에서 OPC-UA 서버 프록시를 구축하는 과정을 나타낸 순서도이다. 4 is a flowchart illustrating a process of building an OPC-UA server proxy in step S310 of FIG. 3.
도 4에 도시한 바와 같이, OPC-UA 기반의 단방향 데이터 송신 장치(200)는 OPC-UA 서버 프록시 관련 설정 정보를 확인한다(S410). As shown in Fig. 4, the OPC-UA-based one-way
OPC-UA 서버 프록시는 OPC-UA 기반의 단방향 데이터 송신 장치(200)의 수신 프록시(220)에 구축되며, 수신 프록시(220)는 OPC-UA 서버 프록시 구축과 관련된 설정을 점검한다. The OPC-UA server proxy is built in the
그리고 수신 프록시(220)는 기 저장된 노드의 정보가 존재하는지 여부를 판단하고(S420), 기 저장된 노드의 정보가 존재하는 경우(S420 YES), OPC-UA 기반의 단방향 데이터 송신 장치(200)는 후술할 S440 단계를 수행한다. And the receiving
기본적으로 수신 프록시(220)는 OPC-UA 서버 프록시 구축 시, 해당하는 구축 정보들(노드의 정보)을 파일 형태로 저장소에 저장한다. 그리고 기 저장된 노드의 정보가 존재하는 경우 저장된 정보를 기반으로 OPC-UA 서버 프록시를 구축할 수 있다. Basically, when the OPC-UA server proxy is built, the receiving
반면, 기 저장된 노드의 정보가 존재하지 않는 경우(S420 NO), OPC-UA 기반의 단방향 데이터 송신 장치(200)는 송신 프록시로부터 노드의 정보를 수신한다(S430). 그리고 OPC-UA 기반의 단방향 데이터 송신 장치(200)는 OPC-UA 서버 프록시를 구축한다(S440).On the other hand, if the previously stored node information does not exist (S420 NO), the OPC-UA-based one-way
기 저장된 노드의 정보가 존재하지 않는 경우, 수신 프록시(220)는 송신 프록시(210)로부터 노드 정보들을 수신하여 OPC-UA 서버 프록시를 구축할 수 있으며, 송신 프록시(210)는 재구동된다. 그리고 S420 단?悶【? 기 저장된 노드의 정보가 존재하는 것으로 판단된 경우, 수신 프록시(220)는 기 저장된 노드의 정보를 기반으로 OPC-UA 서버 프록시를 구축할 수 있다. If the previously stored node information does not exist, the
수신 프록시(220)가 기 구축된 정보를 바탕으로 OPC-UA 서버 프록시를 구동하더라도, 서버 구축과 관련된 새로운 노드 정보 메시지를 수신한 경우, 수신한 새로운 노드 정보 메시지를 기반으로 OPC-UA 서버 프록시를 재구축한다. 이러한 경우는 송신 프록시(210)가 재구동한 경우를 의미할 수 있으며, 수신 프록시(220)는 새로운 노드 정보 메시지로 OPC-UA 서버 프록시를 재 구축하여 실제 안전 영역인 OPC-UA 서버와 동일한 구성을 제공할 수 있다. Even if the receiving
즉, 송신 프록시(210)가 재구동되는 경우, 수신 프록시(220)의 OPC-UA 서버 프록시는 무조건 재구축되며, 수신 프록시(220)만 재구동되는 경우에는 기 저장된 구축 정보를 선택적으로 활용할 수 있다. That is, when the
다시 도 3에 대하여 설명하면, OPC-UA 기반의 단방향 데이터 송신 장치(200)는 실시간 데이터의 업데이트를 수행한다(S320). 그리고 OPC-UA 기반의 단방향 데이터 송신 장치(200)는 히스토리컬 데이터의 업데이트를 수행한다(S330). Referring back to FIG. 3, the OPC-UA-based one-way
OPC-UA 기반의 단방향 데이터 송신 장치(200)는 OPC-UA 서버 프록시를 구축한 후, 실시간 데이터 및 히스토리컬 데이터의 업데이트를 수행할 수 있다. 송신 프록시(210)는 기 수신한 노드의 정보를 기반으로, 안전 영역의 OPC-UA 서버(100)에 모든 실시간 데이터 및 히스토리컬 데이터를 요청하고, OPC-UA 서버(100)로부터 실시간 데이터 및 히스토리컬 데이터를 수신한다. The OPC-UA-based one-way
그리고 송신 프록시(210)는 수신된 실시간 데이터 및 히스토리컬 데이터를 수신 프록시(220)로 전달하며, 수신 프록시(220)는 전달받은 데이터를 기반으로, 구축된 관리 대상 노드에 상응하는 실시간 데이터 및 히스토리컬 데이터를 지속적으로 업데이트한다. 또한, 수신 프록시(220)는 비안전 영역의 OPC-UA 클라이언트(300)의 요청에 적합한 데이터를 OPC-UA 클라이언트(300)로 전송할 수 있다. In addition, the
여기서, 실시간 데이터는 모니터링 하고자 하는 관리 대상 노드의 데이터가 변화할 때마다 자동적으로 생성되어 OPC-UA 기반의 단방향 데이터 송신 장치(200)로 전달된다. 즉, 실시간 데이터는 OPC-UA 서버(100)에 등록된 노드의 데이터가 변경됨과 동시에 송신 프록시(210)로 전송되는 것으로, 지속적으로 갱신되는 데이터이다. Here, real-time data is automatically generated whenever data of a management target node to be monitored changes, and transmitted to the OPC-UA-based one-way
반면, 히스토리컬 데이터는 송신 프록시(210)의 설정에 따른 주기적인 전송 요청에 대한 응답으로, OPC-UA 서버(100)로부터 수신되는 것이다. 즉, 히스토리컬 데이터는 요청 주기(P) 요청 범위(T)에 상응하는 히스토리컬 전송 요청을 OPC-UA 서버(100)로 전송하여 수신하는 것이다. 히스토리컬 데이터는 지속적으로 누적되는 데이터이므로, 송수신 시 분실될 경우 해당 데이터를 획득하기 쉽지 않다. On the other hand, historical data is received from the OPC-
즉, 히스토리컬 데이터는 송수신되는 데이터에 대한 신뢰성이 보장되어야 하며, 이를 위하여 송신 프록시(210)는 요청 주기(P) 및 요청 범위(T)를 조절하여, 일정한 히스토리컬 데이터를 중복 수신하여 전달하는 기법을 사용할 수 있다. That is, the historical data must ensure the reliability of the transmitted/received data, and for this purpose, the
이하에서는 도 5 내지 도 7을 통하여, 본 발명의 일실시예에 따른 히스토리컬 데이터의 업데이트 과정에 대하여 더욱 상세하게 설명한다. Hereinafter, a process of updating historical data according to an embodiment of the present invention will be described in more detail with reference to FIGS. 5 to 7.
도 5는 도 3의 S330 단계에서 히스토리컬 데이터를 업데이트하는 과정을 나타낸 순서도이다. 5 is a flowchart illustrating a process of updating historical data in step S330 of FIG. 3.
OPC-UA 기반의 단방향 데이터 송신 장치(200)의 송신 프록시(210)는 OPC-UA 서버(100)로 히스토리컬 데이터(C0)를 요청하고(S510), OPC-UA 서버(100)는 송신 프록시(210)로 히스토리컬 데이터를 전송한다(S515). The
도 6은 본 발명의 일실시예에 따른 OPC-UA 서버의 히스토리컬 데이터를 나타낸 예시도이고, 도 7은 도 5에서 수신 프록시가 수신한 히스토리컬 데이터를 나타낸 예시도이다. 6 is an exemplary diagram showing historical data of an OPC-UA server according to an embodiment of the present invention, and FIG. 7 is an exemplary diagram illustrating historical data received by a reception proxy in FIG. 5.
도 6에 도시한 바와 같이, OPC-UA 서버(100)가 S510 단계에서 히스토리컬 데이터(C0)의 요청을 수신하여, S515 단계에서 송신 프록시(210)로 히스토리컬 데이터를 전송할 때, OPC-UA 서버(100)는 OPC-UA 서버 데이터(610) 중에서 S515 단계에서 히스토리컬 데이터를 전송하는 시점까지의 데이터인 데이터 1 내지 데이터 5를 송신 프록시(210)로 전송할 수 있다. 6, when the OPC-
그리고 OPC-UA 서버(100)로부터 히스토리컬 데이터를 수신한 송신 프록시(210)는 수신 프록시(220)로 수신한 히스토리컬 데이터를 전달한다(S520). 또한, 히스토리컬 데이터를 수신한 수신 프록시(220)는 히스토리컬 데이터의 업데이트를 수행한다(S525). In addition, the
도 7과 같이, S520 단계에서 수신 프록시(220)는 송신 프록시(210)로부터 데이터 1 내지 데이터 5의 히스토리컬 데이터를 수신하며, 수신한 데이터를 이용하여 제1 히스토리컬 데이터 업데이트(710)를 수행할 수 있다. 이때, 데이터 1 내지 데이터 5는 신규 수신 데이터(810)이다. As shown in FIG. 7, in step S520, the
S510 단계에서 히스토리컬 데이터를 요청한 후 기 설정된 요청 주기(P)에 상응하는 시간이 경과한 경우, 송신 프록시(210)는 다시 OPC-UA 서버(100)로 히스토리컬 데이터(C1,T)을 요청한다(S530). When the time corresponding to the preset request period (P) has elapsed after requesting the historical data in step S510, the
그리고 OPC-UA 서버(100)는 송신 프록시(210)로 히스토리컬 데이터를 전송한다(S535). OPC-UA 서버(100)로부터 히스토리컬 데이터를 수신한 송신 프록시(210)는 수신 프록시로(220) 해당 히스토리컬 데이터를 전달하고(S540), 수신 프록시(220)는 히스토리컬 데이터의 업데이트를 수행할 수 있다(S545). And the OPC-
도 6에서, S530 단계에서 송신 프록시(210)가 OPC-UA 서버(100)로 히스토리컬 데이터(C1,T)를 요청하면, OPC-UA 서버(100)는 S530 단계를 기준으로 요청 범위(T) 내의 히스토리컬 데이터인 데이터 2 내지 데이터 8을 송신 프록시(210)로 전송할 수 있다. In FIG. 6, when the
또한, 도 7에 도시한 바와 같이 수신 프록시(220)는 송신 프록시(210)로부터 데이터 2 내지 데이터 8의 히스토리컬 데이터를 수신하여, 제2 히스토리컬 데이터 업데이트(720)를 수행한다. 도 7에서 데이터 1은 이전 수신 데이터(820)이고, 데이터 2 내지 데이터 4는 중복 수신 데이터(830)이며, 데이터 5 내지 데이터 8은 신규 수신 데이터(810)이다. In addition, as shown in FIG. 7, the
S530 단계에서 히스토리컬 데이터를 요청한 후 요청 주기(P)에 상응하는 시간이 경과하면 송신 프록시(210)는 히스토리컬 데이터를 요청하는 과정(S550), OPC-UA 서버로부터 히스토리컬 데이터를 수신하는 과정(S555), 수신한 히스토리컬 데이터를 수신 프록시(220)로 전달하는 과정(S560)을 수행하며, 송신 프록시(210)로부터 히스토리컬 데이터를 수신한 수신 프록시(220)는 히스토리컬 데이터의 업데이트를 수행하는 과정(S565) 단계를 수행할 수 있다. When the time corresponding to the request period (P) elapses after requesting the historical data in step S530, the
S550 단계에서 송신 프록시(210)로부터 히스토리컬 데이터의 요청을 수신한 OPC-UA 서버(100)는, 요청을 수신한 시점부터 요청 범위(T) 내의 데이터인 데이터 6 내지 데이터 12를 송신 프록시(210)로 전송할 수 있다. The OPC-
또한, 송신 프록시(210)는 수신 프록시(220)로 데이터 6 내지 데이터 12를 전달하며, 수신 프록시(220)는 도 7과 같이 제3 히스토리컬 데이터 업데이트(730)를 수행할 수 있다. 여기서, 데이터 1 내지 데이터 5는 이전 수신 데이터(820)이고, 데이터 6 내지 데이터 8은 중복 수신 데이터(830)이며, 데이터 9 내지 데이터 12는 신규 수신 데이터(810)이다. In addition, the
이후에도, 송신 프록시(210)는 OPC-UA 서버(100)로 히스토리컬 데이터를 요청하는 과정(S570)을 수행하여, 일정한 요청 주기(P)마다 요청 범위(T)에 상응하는 히스토리컬 데이터를 요청 및 수신할 수 있다. Thereafter, the
S570 단계에서, 히스토리컬 데이터를 요청하는 시간(Ci)은 히스토리컬 데이터의 전송을 요청하는 현재 시간을 의미하며, 바로 직전 주기에서 히스토리컬 데이터를 요청한 시간(Ci-1)로부터 요청 주기(P)만큼의 시간이 경과한 시간을 의미할 수 있다. In step S570, the time (C i ) for requesting historical data refers to the current time for requesting the transmission of historical data, and the request period (C i-1 ) from the time (C i-1 ) for requesting historical data in the immediately preceding period. It can mean the time that P) has elapsed.
즉, 송신 프록시(210)는 안전 영역의 OPC-UA 서버(100)에 요청 주기인 P 시간마다 히스토리컬 데이터의 전송을 요청하며, 요청 시 현재 시간(Ci)과 요청 범위(T)를 지정함으로써, 현재 시간(Ci)을 기준으로 이전 T 시간만큼의 히스토리컬 데이터를 수신할 수 있다.That is, the
마지막으로, OPC-UA 기반의 단방향 데이터 송신 장치(200)는 OPC-UA 클라이언트로 데이터를 전송한다(S340). Finally, the OPC-UA-based one-way
OPC-UA 기반의 단방향 데이터 송신 장치(200)의 수신 프록시(220)는 OPC-UA 클라이언트(300)로부터 데이터 요청을 수신하고, 요청에 적합한 데이터를 OPC-UA 클라이언트(300)로 전송할 수 있다. The
도 7에서 데이터 2 내지 4, 데이터 6 내지 8과 같이 수신 프록시(220)는 중복된 데이터를 부가적으로 수신한다. OPC-UA 기반의 단방향 데이터 송신 장치(200)는 네트워크의 환경 및 데이터의 중요도에 따라 요청 주기(P) 및 요청 범위(T)를 설정하여 적용할 수 있으며, 이를 통하여 히스토리컬 데이터의 단방향 데이터 전송 신뢰성을 향상시킬 수 있다. In FIG. 7, the
이하에서는 도 8을 통하여 본 발명의 일실시예에 따른 단방향 데이터 송수신 시스템의 단방향 데이터 전송 방법에 대하여 더욱 상세하게 설명한다. Hereinafter, a unidirectional data transmission method of a unidirectional data transmission/reception system according to an embodiment of the present invention will be described in more detail with reference to FIG. 8.
도 8은 본 발명의 일실시예에 따른 단방향 데이터 전송 환경에서 단방향 데이터를 송신하는 과정을 설명하기 위한 순서도이다.8 is a flow chart illustrating a process of transmitting unidirectional data in a unidirectional data transmission environment according to an embodiment of the present invention.
도 8에 도시한 바와 같이, 단방향 데이터 전송 환경에서 OPC-UA 서버(100), 단방향 데이터 송신 장치(200) 및 OPC-UA 클라이언트(300)에 의해 수행되는 단방향 데이터 전송 과정은 OPC-UA 서버 프록시 구축 과정(S810 단계 내지 S840 단계), 실시간 데이터 업데이트 과정(S850 단계 내지 S880 단계), 히스토리컬 데이터 업데이트 과정(S890 단계 내지 S920 단계) 및 클라이언트로 데이터를 전송하는 과정(S930 단계) 총 4개의 과정으로 구분될 수 있다. As shown in FIG. 8, the one-way data transmission process performed by the OPC-
그리고 도 8의 과정을 통하여 안전 영역의 OPC-UA 서버(100)는 비안전 영역의 OPC-UA 클라이언트(300)로 OPC-UA 서버 데이터를 전달할 수 있다. In addition, the OPC-
먼저, 단방향 데이터 송신 장치(200)는 OPC-UA 서버(100)와의 연결을 설정하고(S810), OPC-UA 서버(100)로부터 노드의 정보를 수신한다(S820). First, the one-way
단방향 데이터 송신 장치(200)에서 송신 프록시(210)인 OPC-UA 클라이언트 프록시는 비안전 영역의 OPC-UA 클라이언트와 동일한 방식으로, 안전 영역의 OPC-UA 서버(100)에 접속하여, 노드의 정보를 요청하고, OPC-UA 서버(100)로부터 노드의 정보를 수신할 수 있다. In the one-way
그리고 송신 프록시(210)는 OPC-UA 서버(100)로부터 수신한 노드의 정보를 수신 프록시(220)로 전달하여(S830), OPC-UA 서버 프록시를 구축할 수 있다(S840). In addition, the
이때, OPC-UA 서버 프록시는 안전 영역의 OPC-UA 서버(100)와 동일한 IP 주소를 사용하므로, 비안전 영역의 OPC-UA 클라이언트(300)가 안전 영역의 OPC-UA 서버(100)에 접속하는 것과 동일한 효과를 가질 수 있으며, 별도의 설정 변경 절차의 수행을 생략할 수 있다. At this time, the OPC-UA server proxy uses the same IP address as the OPC-
S810 단계 내지 S840 단계의 OPC-UA 서버 프록시 구축 과정을 수행한 후, 단방향 데이터 송신 장치(200)의 송신 프록시(210)는 기 수신한 노드의 정보를 기반으로, 안전 영역의 OPC-UA 서버(100)로 실시간 데이터 및 히스토리컬 데이터를 요청하여 데이터를 수신할 수 있다. After performing the OPC-UA server proxy building process of steps S810 to S840, the
특히, 단방향 데이터 송신 장치(200)의 송신 프록시(210)는 OPC-UA 서버(100)로 실시간 데이터를 요청하고(S850), OPC-UA 서버(100)로부터 실시간 데이터를 수신하며(S860), 수신한 실시간 데이터를 수신 프록시(220)로 전달한다. 또한, 실시간 데이터를 수신한 수신 프록시(220)는 실시간 데이터의 업데이트를 수행할 수 있다(S880). In particular, the
그리고 단방향 데이터 송신 장치(200)의 송신 프록시(210)는 OPC-UA 서버(100)로 히스토리컬 데이터를 요청하고(S890), OPC-UA 서버(100)로부터 히스토리컬 데이터를 수신하며(S900), 수신한 히스토리컬 데이터를 수신 프록시(220)로 전달한다(S910). 또한, 히스토리컬 데이터를 수신한 수신 프록시(220)는 히스토리컬 데이터의 업데이트를 수행한다(S920). And the
히스토리컬 데이터 업데이트 과정에서, 송신 프록시(210)는 히스토리컬 데이터를 요청하고, 수신한 히스토리컬 데이터를 수신 프록시(220)로 전송하는 S890 단계 내지 S910 단계의 수행을 반복적으로 수행할 수 있다. In the historical data update process, the
그리고 S880 단계 및 S920 단계를 통하여 실시간 데이터 및 히스토리컬 데이터에 대한 업데이트를 수행한 수신 프록시(220)는 OPC-UA 클라이언트(300)와 연결되어, OPC-UA 클라이언트(300)의 요청에 상응하는 데이터를 제공할 수 있다.In addition, the receiving
이와 같이, 단방향 데이터 송수신 시스템에서 OPC-UA 기반의 단방향 데이터 송신 장치에 의해 수행되는 단방향 데이터 송신 방법은, 안전 영역의 OPC-UA 서버와 수신 프록시의 OPC-UA 서버 프록시와의 동기화가 가능하므로, 종래 기술에 따른 OPC-UA 서버와 OPC-UA 클라이언트의 추가적인 설정 변경 등이 요구되지 않으며, 히스토리컬 데이터에 대한 단방향 데이터 전송의 신뢰성을 향상시킬 수 있다. 또한, 이를 통하여 안정적으로 데이터를 모니터링 할 수 있다. As described above, in the one-way data transmission method performed by the OPC-UA-based one-way data transmission device in the one-way data transmission/reception system, synchronization between the OPC-UA server in the safe area and the OPC-UA server proxy in the receiving proxy is possible, It is not required to change additional settings of the OPC-UA server and OPC-UA client according to the prior art, and reliability of one-way data transmission for historical data can be improved. In addition, data can be stably monitored through this.
즉, 본 발명의 일실시예에 따른 OPC-UA 기반의 단방향 데이터 송신 장치는 OPC-UA 서버가 OPC-UA 클라이언트로 전송하는 데이터의 특성에 따라, 송신측 및 수신측에 적절한 동작을 수행하는 프록시를 배치함으로써, 안전 영역에 대한 외부의 침입은 원천 봉쇄하면서, 안전 영역의 OPC-UA 데이터를 비안전 영역으로 효과적으로 전달할 수 있다. That is, the OPC-UA-based one-way data transmission device according to an embodiment of the present invention is a proxy that performs an appropriate operation on the sending side and the receiving side according to the characteristics of the data transmitted by the OPC-UA server to the OPC-UA client. By arranging, it is possible to effectively transfer the OPC-UA data of the safe area to the non-secure area while blocking intrusion from outside the safe area at the source.
도 9은 본 발명의 일실시예에 따른 컴퓨터 시스템을 나타낸 블록도이다.9 is a block diagram showing a computer system according to an embodiment of the present invention.
도 9을 참조하면, 본 발명의 실시예는 컴퓨터로 읽을 수 있는 기록매체와 같은 컴퓨터 시스템(900)에서 구현될 수 있다. 도 9에 도시된 바와 같이, 컴퓨터 시스템(900)은 버스(920)를 통하여 서로 통신하는 하나 이상의 프로세서(910), 메모리(930), 사용자 입력 장치(940), 사용자 출력 장치(950) 및 스토리지(960)를 포함할 수 있다. 또한, 컴퓨터 시스템(900)은 네트워크(980)에 연결되는 네트워크 인터페이스(970)를 더 포함할 수 있다. 프로세서(910)는 중앙 처리 장치 또는 메모리(930)나 스토리지(960)에 저장된 프로세싱 인스트럭션들을 실행하는 반도체 장치일 수 있다. 메모리(930) 및 스토리지(960)는 다양한 형태의 휘발성 또는 비휘발성 저장 매체일 수 있다. 예를 들어, 메모리는 ROM(931)이나 RAM(932)을 포함할 수 있다.Referring to FIG. 9, an embodiment of the present invention may be implemented in a
따라서, 본 발명의 실시예는 컴퓨터로 구현된 방법이나 컴퓨터에서 실행 가능한 명령어들이 기록된 비일시적인 컴퓨터에서 읽을 수 있는 매체로 구현될 수 있다. 컴퓨터에서 읽을 수 있는 명령어들이 프로세서에 의해서 수행될 때, 컴퓨터에서 읽을 수 있는 명령어들은 본 발명의 적어도 한 가지 태양에 따른 방법을 수행할 수 있다.Accordingly, an embodiment of the present invention may be implemented as a computer-implemented method or a non-transitory computer-readable medium in which instructions executable in a computer are recorded. When computer-readable instructions are executed by a processor, the computer-readable instructions may perform a method according to at least one aspect of the present invention.
이상에서와 같이 본 발명에 따른 OPC-UA 기반의 단방향 데이터 송신 장치 및 방법은 상기한 바와 같이 설명된 실시예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다. As described above, the OPC-UA-based one-way data transmission apparatus and method according to the present invention is not limited to the configuration and method of the embodiments described as described above, but various modifications may be made to the embodiments. All or part of each of the embodiments may be selectively combined and configured.
100: OPC-UA 서버 200: 단방향 데이터 송신 장치
210: 송신 프록시 220: 수신 프록시
300: OPC-UA 클라이언트 610: OPC-UA 서버 데이터
710: 제1 히스토리컬 데이터 업데이트
720: 제2 히스토리컬 데이터 업데이트
730: 제3 히스토리컬 데이터 업데이트
810: 신규 수신 데이터 820: 이전 수신 데이터
830: 중복 수신 데이터 900: 컴퓨터 시스템
910: 프로세서 920: 버스
930: 메모리 931: 롬
932: 램 940: 사용자 입력 장치
950: 사용자 출력 장치 960: 스토리지
970: 네트워크 인터페이스 980: 네트워크100: OPC-UA server 200: one-way data transmission device
210: sending proxy 220: receiving proxy
300: OPC-UA client 610: OPC-UA server data
710: first historical data update
720: update the second historical data
730: third historical data update
810: new received data 820: previous received data
830: duplicate received data 900: computer system
910: processor 920: bus
930: memory 931: ROM
932: RAM 940: user input device
950: user output device 960: storage
970: network interface 980: network
Claims (20)
상기 OPC-UA 서버로부터 관리 대상 노드의 정보를 수신하고, 상기 OPC-UA 서버로 관리 대상 노드에 상응하는 데이터를 요청하여, 상기 관리 대상 노드에 상응하는 실시간 데이터 및 히스토리컬 데이터를 수신하는 송신 프록시, 그리고
상기 송신 프록시로부터 상기 관리 대상 노드의 정보를 수신하여 OPC-UA 서버 프록시를 구축하고, 상기 송신 프록시로부터 상기 실시간 데이터 및 상기 히스토리컬 데이터를 수신하며, 구축된 상기 OPC-UA 서버 프록시를 이용하여 상기 관리 대상 노드에 대한 상기 실시간 데이터 및 상기 히스토리컬 데이터의 업데이트를 수행하고, 상기 OPC-UA 클라이언트의 요청에 상응하는 데이터를 상기 OPC-UA 클라이언트로 전송하는 수신 프록시
를 포함하고,
상기 히스토리컬 데이터는,
상기 송신 프록시의 주기적인 전송 요청에 상응하도록, 상기 OPC-UA 서버로부터 수신한 데이터이고,
상기 송신 프록시는,
요청 주기 및 요청 범위에 상응하는 상기 히스토리컬 데이터의 전송 요청을 상기 OPC-UA 서버로 전송하고, 상기 OPC-UA 서버로부터 상기 전송 요청에 상응하는 상기 히스토리컬 데이터를 수신하는 것을 특징으로 하는 OPC-UA 기반의 단방향 데이터 송신 장치. In the one-way data transmission device for transmitting the data of the OPC-UA server to the OPC-UA client,
A transmission proxy for receiving information on a management target node from the OPC-UA server, requesting data corresponding to a management target node to the OPC-UA server, and receiving real-time data and historical data corresponding to the management target node , And
Receive information on the management target node from the transmission proxy to establish an OPC-UA server proxy, receive the real-time data and the historical data from the transmission proxy, and use the established OPC-UA server proxy. A reception proxy that updates the real-time data and the historical data for a management target node, and transmits data corresponding to the request of the OPC-UA client to the OPC-UA client
Including,
The historical data,
Data received from the OPC-UA server to correspond to the periodic transmission request of the transmission proxy,
The transmission proxy,
OPC, characterized in that the transmission request of the historical data corresponding to the request period and the request range is transmitted to the OPC-UA server, and the historical data corresponding to the transmission request is received from the OPC-UA server. -UA-based one-way data transmission device.
상기 실시간 데이터는,
OPC DA 데이터, OPC 알람 데이터 및 OPC 이벤트 데이터 중 적어도 어느 하나를 포함하고, 상기 관리 대상 노드의 데이터 변화 시 자동으로 생성되는 데이터인 것을 특징으로 하는 OPC-UA 기반의 단방향 데이터 송신 장치. The method of claim 1,
The real-time data,
OPC-UA-based one-way data transmission apparatus comprising at least one of OPC DA data, OPC alarm data, and OPC event data, and is data automatically generated when data of the management target node changes.
상기 송신 프록시는,
상기 요청 주기에 상응하는 시간마다, 현재 시간을 기준으로 상기 요청 범위에 상응하는 시간 동안의 상기 히스토리컬 데이터의 전송을 요청하는 상기 히스토리컬 데이터의 전송 요청을 상기 OPC-UA 서버로 전송하는 것을 특징으로 하는 OPC-UA 기반의 단방향 데이터 송신 장치. The method of claim 1,
The transmission proxy,
At each time corresponding to the request period, a request for transmission of the historical data for a time corresponding to the request range is transmitted to the OPC-UA server based on the current time. OPC-UA-based one-way data transmission device.
상기 수신 프록시는,
상기 송신 프록시 및 상기 수신 프록시 중 적어도 어느 하나가 재구동되는 경우, 상기 OPC-UA 서버 프록시를 재구축하는 것을 특징으로 하는 OPC-UA 기반의 단방향 데이터 송신 장치.The method of claim 1,
The receiving proxy,
When at least one of the transmission proxy and the reception proxy is restarted, the OPC-UA-based one-way data transmission device, characterized in that rebuilding the OPC-UA server proxy.
상기 수신 프록시는,
상기 OPC-UA 서버 프록시 구축 시, 상기 OPC-UA 서버 프록시에 상응하는 구축 정보를 저장하는 것을 특징으로 하는 OPC-UA 기반의 단방향 데이터 송신 장치. The method of claim 6,
The receiving proxy,
When constructing the OPC-UA server proxy, the OPC-UA-based one-way data transmission device, characterized in that storing construction information corresponding to the OPC-UA server proxy.
상기 수신 프록시는,
상기 OPC-UA 서버 프록시의 구축과 관련된 설정 정보를 확인하고, 기 구축된 노드의 정보가 존재하는 경우 상기 구축 정보를 기반으로 상기 OPC-UA 서버 프록시를 재구축하며, 상기 기 구축된 노드의 정보가 존재하지 않는 경우 상기 송신 프록시로부터 노드의 정보를 수신하여 상기 OPC-UA 서버를 재구축하는 것을 특징으로 하는 OPC-UA 기반의 단방향 데이터 송신 장치.The method of claim 7,
The receiving proxy,
Check the setting information related to the establishment of the OPC-UA server proxy, and if there is information on the previously established node, rebuild the OPC-UA server proxy based on the establishment information, and the information on the previously established node OPC-UA-based one-way data transmission apparatus, characterized in that the OPC-UA server is reconstructed by receiving information of the node from the transmission proxy when there is no presence.
상기 수신 프록시는,
상기 송신 프록시가 재구동되는 경우 상기 OPC-UA 서버 프록시를 재구축하고, 상기 수신 프록시만 재구동되는 경우 선택적으로 상기 OPC-UA 서버 프록시를 재구축하는 것을 특징으로 하는 OPC-UA 기반의 단방향 데이터 송신 장치. The method of claim 6,
The receiving proxy,
OPC-UA-based one-way data, characterized in that when the transmission proxy is restarted, the OPC-UA server proxy is rebuilt, and when only the receiving proxy is restarted, the OPC-UA server proxy is selectively rebuilt. Transmitting device.
상기 수신 프록시는,
상기 송신 프록시로부터 새로운 노드의 정보를 수신한 경우, 상기 새로운 노드의 정보를 기반으로 상기 OPC-UA 서버 프록시를 재구축하는 것을 특징으로 하는 OPC-UA 기반의 단방향 데이터 송신 장치.The method of claim 1,
The receiving proxy,
When receiving information on a new node from the transmission proxy, the OPC-UA server proxy is rebuilt based on the information on the new node.
상기 OPC-UA 서버로부터 관리 대상 노드의 정보를 수신하여 OPC-UA 서버 프록시를 구축하는 단계,
상기 OPC-UA 서버로 실시간 데이터를 요청하여 수신하고, 상기 실시간 데이터를 업데이트 하는 단계,
상기 OPC-UA 서버로 히스토리컬 데이터를 요청하여 수신하고, 상기 히스토리컬 데이터를 업데이트 하는 단계, 그리고
상기 OPC-UA 클라이언트의 요청에 상응하도록 상기 OPC-UA 클라이언트로 상기 실시간 데이터 및 상기 히스토리컬 데이터 중 적어도 어느 하나를 포함하는 데이터를 전송하는 단계
를 포함하고,
상기 OPC-UA 기반의 단방향 데이터 송신 장치는,
상기 OPC-UA 서버에 접속하여 상기 관리 대상 노드의 정보를 수신하는 송신 프록시, 그리고
상기 OPC-UA 서버로부터 수신된 상기 실시간 데이터 및 상기 히스토리컬 데이터를 상기 OPC-UA 클라이언트로 전송하는 수신 프록시
를 포함하고,
상기 히스토리컬 데이터는,
주기적인 상기 히스토리컬 데이터의 전송 요청에 상응하도록, 상기 OPC-UA 서버로부터 수신한 데이터이고,
상기 히스토리컬 데이터를 업데이트 하는 단계는,
상기 송신 프록시가 요청 주기 및 요청 범위에 상응하는 상기 히스토리컬 데이터의 전송 요청을 상기 OPC-UA 서버로 전송하는 단계, 그리고
상기 송신 프록시가 상기 OPC-UA 서버로부터 상기 전송 요청에 상응하는 상기 히스토리컬 데이터를 수신하는 단계
를 포함하는 것을 특징으로 하는 OPC-UA 기반의 단방향 데이터 송신 방법. In the one-way data transmission method performed by an OPC-UA-based one-way data transmission device for transmitting data from an OPC-UA server to an OPC-UA client,
Receiving information on a management target node from the OPC-UA server to establish an OPC-UA server proxy,
Requesting and receiving real-time data from the OPC-UA server, and updating the real-time data,
Requesting and receiving historical data from the OPC-UA server, and updating the historical data, and
Transmitting data including at least one of the real-time data and the historical data to the OPC-UA client to correspond to the request of the OPC-UA client
Including,
The OPC-UA-based one-way data transmission device,
A transmission proxy that accesses the OPC-UA server and receives information on the management target node, and
A reception proxy for transmitting the real-time data and the historical data received from the OPC-UA server to the OPC-UA client
Including,
The historical data,
It is data received from the OPC-UA server to correspond to the periodic transmission request of the historical data,
The step of updating the historical data,
Transmitting, by the transmission proxy, a request for transmission of the historical data corresponding to a request period and a request range to the OPC-UA server, and
Receiving, by the transmission proxy, the historical data corresponding to the transmission request from the OPC-UA server
OPC-UA-based one-way data transmission method comprising a.
상기 실시간 데이터는,
OPC DA 데이터, OPC 알람 데이터 및 OPC 이벤트 데이터 중 적어도 어느 하나를 포함하고, 상기 관리 대상 노드의 데이터 변화 시 자동으로 생성되는 데이터인 것을 특징으로 하는 단방향 데이터 송신 방법. The method of claim 11,
The real-time data,
One-way data transmission method comprising at least one of OPC DA data, OPC alarm data, and OPC event data, and is automatically generated when data of the management target node changes.
상기 히스토리컬 데이터의 전송 요청을 상기 OPC-UA 서버로 전송하는 단계는,
상기 송신 프록시가 상기 요청 주기에 상응하는 시간마다, 현재 시간을 기준으로 상기 요청 범위에 상응하는 시간 동안의 상기 히스토리컬 데이터의 전송을 요청하는 상기 히스토리컬 데이터의 전송 요청을 상기 OPC-UA 서버로 전송하는 것을 특징으로 하는 단방향 데이터 송신 방법. The method of claim 13,
Transmitting the request for transmission of the historical data to the OPC-UA server,
At each time corresponding to the request period, the transmission proxy sends a request for transmission of the historical data to the OPC-UA server for a time corresponding to the request range based on the current time. One-way data transmission method, characterized in that the transmission.
상기 송신 프록시 및 상기 수신 프록시 중 적어도 어느 하나가 재구동되는 경우, 상기 OPC-UA 서버 프록시를 재구축하는 단계
를 더 포함하는 것을 특징으로 하는 단방향 데이터 송신 방법.The method of claim 11,
When at least one of the transmission proxy and the reception proxy is restarted, rebuilding the OPC-UA server proxy
One-way data transmission method further comprising a.
상기 OPC-UA 서버 프록시 구축 시, 상기 수신 프록시가 상기 OPC-UA 서버 프록시에 상응하는 구축 정보를 저장하는 단계
를 더 포함하는 것을 특징으로 하는 단방향 데이터 송신 방법. The method of claim 17,
When establishing the OPC-UA server proxy, storing, by the receiving proxy, construction information corresponding to the OPC-UA server proxy
One-way data transmission method further comprising a.
상기 OPC-UA 서버 프록시를 재구축하는 단계는,
상기 수신 프록시가 상기 OPC-UA 서버 프록시의 구축과 관련된 설정 정보를 확인하는 단계,
기 구축된 노드의 정보가 존재하는 경우 상기 구축 정보를 기반으로 상기 OPC-UA 서버 프록시를 재구축하는 단계, 그리고
상기 기 구축된 노드의 정보가 존재하지 않는 경우 상기 송신 프록시로부터 노드의 정보를 수신하여 상기 OPC-UA 서버를 재구축하는 단계
를 포함하는 것을 특징으로 하는 단방향 데이터 송신 방법.The method of claim 18,
Rebuilding the OPC-UA server proxy,
The receiving proxy confirms setting information related to the establishment of the OPC-UA server proxy,
Re-establishing the OPC-UA server proxy based on the establishment information when information on the previously established node exists, and
Rebuilding the OPC-UA server by receiving node information from the transmission proxy when the previously established node information does not exist
One-way data transmission method comprising a.
상기 OPC-UA 서버 프록시를 재구축하는 단계는,
상기 송신 프록시가 재구동되는 경우 상기 OPC-UA 서버 프록시를 재구축하고, 상기 수신 프록시만 재구동되는 경우 선택적으로 상기 OPC-UA 서버 프록시를 재구축하는 것을 특징으로 하는 단방향 데이터 송신 방법. The method of claim 17,
Rebuilding the OPC-UA server proxy,
When the transmission proxy is restarted, the OPC-UA server proxy is rebuilt, and when only the receiving proxy is restarted, the OPC-UA server proxy is selectively rebuilt.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170076658A KR102170160B1 (en) | 2017-06-16 | 2017-06-16 | Apparatus and method for unidirectional data transmission based on opc-ua |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170076658A KR102170160B1 (en) | 2017-06-16 | 2017-06-16 | Apparatus and method for unidirectional data transmission based on opc-ua |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20180137244A KR20180137244A (en) | 2018-12-27 |
KR102170160B1 true KR102170160B1 (en) | 2020-10-28 |
Family
ID=64953102
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170076658A KR102170160B1 (en) | 2017-06-16 | 2017-06-16 | Apparatus and method for unidirectional data transmission based on opc-ua |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102170160B1 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102715685B1 (en) * | 2019-06-04 | 2024-10-11 | 한국전자통신연구원 | Method for unidirectional data communication based on opc standard and apparatus for the same |
KR102593008B1 (en) * | 2019-08-02 | 2023-10-23 | 한국전자통신연구원 | Method and apparatus for distributed smart factory operation using opc ua |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002035359A2 (en) | 2000-10-26 | 2002-05-02 | Prismedia Networks, Inc. | Method and system for managing distributed content and related metadata |
KR101562312B1 (en) | 2015-04-06 | 2015-10-21 | (주) 앤앤에스피 | Gateway device of physically unidirectional communication capable of re-transmitting data, as single device, and method of transferring data using the same |
-
2017
- 2017-06-16 KR KR1020170076658A patent/KR102170160B1/en active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002035359A2 (en) | 2000-10-26 | 2002-05-02 | Prismedia Networks, Inc. | Method and system for managing distributed content and related metadata |
KR101562312B1 (en) | 2015-04-06 | 2015-10-21 | (주) 앤앤에스피 | Gateway device of physically unidirectional communication capable of re-transmitting data, as single device, and method of transferring data using the same |
Non-Patent Citations (2)
Title |
---|
Markus Stopper 외 1, "Service-oriented Architecture Design Aspects of OPC UA for Industrial Applications", Proc. of the International MultiConference of Engineers and Computer Scientists (2009.03.18.)* |
S. Sučić,A. Martinic외 1, "Utilizing SOA-ready devices for virtual power plant control in semantic-enabled Smart Grid Analyzing IEC 61850 and OPC UA integration methodology," SmartGridComm.(2011.10.17)* |
Also Published As
Publication number | Publication date |
---|---|
KR20180137244A (en) | 2018-12-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112911027B (en) | Method and apparatus for establishing a media session | |
CA2999343C (en) | Secure enrolment of security device for communication with security server | |
US9160632B2 (en) | Controlling registration floods in VOIP networks via DNS | |
US8117317B2 (en) | Systems and methods for integrating local systems with cloud computing resources | |
JP2004355628A (en) | Method and system for controlling relay of media stream crossing network boundary | |
CN102790808A (en) | Domain name resolution method and system, client | |
CN110661858A (en) | Websocket-based intranet penetration method and system | |
JP2002217943A (en) | Relay server and communication system | |
US9100277B2 (en) | Client credentials data structure and method of employing the same | |
KR102170160B1 (en) | Apparatus and method for unidirectional data transmission based on opc-ua | |
WO2016050133A1 (en) | Authentication credential replacement method and apparatus | |
WO2016066027A1 (en) | Media transmission method and device | |
CN110771117A (en) | Session layer communication using ID-oriented network | |
US20150215167A1 (en) | Methods, systems, and computer readable media for negotiating diameter capabilities | |
US20180375731A1 (en) | System and method for wide area zero-configuration network auto configuration | |
CN104518959A (en) | Method and device for communication between devices | |
JP2010193306A (en) | Ssl/tls connection method and computer program | |
US20200106515A1 (en) | Communication Device, Relay Device, Information Processing System, Communication System and Communication Method | |
JP2014154112A (en) | Communication data relay device and program | |
CN114186213A (en) | Data transmission method, device, equipment and medium based on federal learning | |
JP7158826B2 (en) | COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL SYSTEM AND COMMUNICATION CONTROL METHOD | |
CN111988269A (en) | Policy management system providing authorization information via distributed data stores | |
JP2015197759A (en) | Information processing device, information processing method, and program | |
CN114553567B (en) | Network transmission method, system, storage medium and computing device in multiparty security computing | |
KR20120081405A (en) | Extendable network management system and the method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E90F | Notification of reason for final refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |