KR102550102B1 - 설비를 제어하는 서버, 방법 및 컴퓨터 프로그램 - Google Patents

설비를 제어하는 서버, 방법 및 컴퓨터 프로그램 Download PDF

Info

Publication number
KR102550102B1
KR102550102B1 KR1020200165670A KR20200165670A KR102550102B1 KR 102550102 B1 KR102550102 B1 KR 102550102B1 KR 1020200165670 A KR1020200165670 A KR 1020200165670A KR 20200165670 A KR20200165670 A KR 20200165670A KR 102550102 B1 KR102550102 B1 KR 102550102B1
Authority
KR
South Korea
Prior art keywords
packet
facilities
packets
response
facility
Prior art date
Application number
KR1020200165670A
Other languages
English (en)
Other versions
KR20220076811A (ko
Inventor
최일석
김기철
박대흠
Original Assignee
주식회사 케이티
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 케이티 filed Critical 주식회사 케이티
Priority to KR1020200165670A priority Critical patent/KR102550102B1/ko
Publication of KR20220076811A publication Critical patent/KR20220076811A/ko
Priority to KR1020230082716A priority patent/KR20230104558A/ko
Application granted granted Critical
Publication of KR102550102B1 publication Critical patent/KR102550102B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/4185Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the network communication
    • G05B19/4186Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the network communication by protocol, e.g. MAP, TOP
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/12Network monitoring probes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/18Protocol analysers
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Tourism & Hospitality (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Primary Health Care (AREA)
  • Health & Medical Sciences (AREA)
  • Marketing (AREA)
  • General Health & Medical Sciences (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Quality & Reliability (AREA)
  • Automation & Control Theory (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

설비를 제어하는 서버는 복수의 설비 각각에 대하여 적어도 하나의 통신 프로토콜에 기초한 적어도 하나의 표준 패킷 및 적어도 하나의 표준 패킷으로부터 변형된 적어도 하나의 변형 패킷을 포함하는 복수의 요청 패킷을 생성하는 패킷 생성부, 생성된 복수의 요청 패킷을 복수의 설비로 전송하고, 복수의 설비로부터 응답된 복수의 응답 패킷을 수신하는 통신부, 복수의 요청 패킷 및 복수의 응답 패킷을 복수의 설비에 대한 정보와 매핑하여 저장하는 저장부, 복수의 요청 패킷 및 복수의 응답 패킷에 기초하여 복수의 응답 패킷의 패턴을 분석하여 복수의 설비 각각과 송수신하기 위한 패킷의 형태를 결정하는 패킷 결정부 및 상기 결정된 패킷의 형태에 기초하여 상기 복수의 설비 각각과 송수신하여 상기 복수의 설비를 제어하는 제어부를 포함할 수 있다.

Description

설비를 제어하는 서버, 방법 및 컴퓨터 프로그램{SERVER, METHOD AND COMPUTER PROGRAM FOR AUTOMATICALLY CONTROLLING FACILITY}
본 발명은 설비를 제어하는 서버, 방법 및 컴퓨터 프로그램에 관한 것이다.
산업 현장에 구축된 설비들은 표준화가 이루어지지 않아 서로 다른 폐쇄적인 프로토콜로 운영되고 있다. 이는, 산업 현장에서의 안정성을 확보하기 위해 설비 및 설비 관리 시스템 등을 도입함에 있어 폐쇄적인 경향을 갖고, 설비 제조 업체별 이해관계가 복잡하기 때문이다.
이러한 설비들이 송수신하는 패킷은 표준 프로토콜 기반의 구조를 갖고 있으나, 상술한 이유로 인해 서로 다른 규칙으로 운영되고 있다.
한편, 종래의 산업 설비의 프로토콜 분석 방법은 프로토콜 관리 웹(WEB)을 통해 사용자가 직접 특정 설비의 프로토콜을 분석하였다. 이러한 프로토콜 관리 웹은 특정 설비와의 통신을 수행하는 것이 아니고 특정 설비의 프로토콜을 분석하는 툴만을 제공한다.
또한, 프로토콜 관리 웹은 특정 설비와의 통신을 수행하는 것이 아니기 때문에 특정 설비의 제어를 위한 지속적인 데이터 수집이 불가능하다. 또한, 설비의 교체로 인해 통신 프로토콜에 대한 변경이 필요한 경우에는 사용자가 직접 통신 프로토콜의 변경을 수행해야 하는 불편함이 있고, 설비의 통신 오류가 발생한 경우, 사용자가 직접 통신 패킷을 확인 및 분석해야 한다. 동일한 자동제어 프로토콜이라도 설비에 따라 다양한 응답 유형을 갖고 있기 때문에 프로토콜 분석에 어려움이 있다.
한국등록특허공보 제10-2112587호 (2020.05.13. 등록)
본 발명은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 복수의 설비마다 통신 프로토콜에 기초하여 생성된 복수의 요청 패킷을 각 설비로 전송하고, 복수의 설비로부터 응답된 응답 패킷과 요청 패킷에 기초하여 응답 패킷의 패턴을 분석하여 각 설비와 송수신하기 위한 패킷의 형태를 결정하고자 한다.
다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 제 1 측면에 따른 설비를 제어하는 서버는 복수의 설비 각각에 대하여 적어도 하나의 통신 프로토콜에 기초한 적어도 하나의 표준 패킷 및 상기 적어도 하나의 표준 패킷으로부터 변형된 적어도 하나의 변형 패킷을 포함하는 복수의 요청 패킷을 생성하는 패킷 생성부; 상기 생성된 복수의 요청 패킷을 상기 복수의 설비로 전송하고, 상기 복수의 설비로부터 응답된 응답 패킷을 수신하는 통신부; 상기 복수의 요청 패킷 및 상기 복수의 응답 패킷을 상기 복수의 설비에 대한 정보와 매핑하여 저장하는 저장부; 상기 복수의 요청 패킷 및 상기 복수의 응답 패킷에 기초하여 상기 복수의 응답 패킷의 패턴을 분석하여 상기 복수의 설비 각각과 송수신하기 위한 패킷의 형태를 결정하는 패킷 결정부; 및 상기 결정된 패킷의 형태에 기초하여 상기 복수의 설비 각각과 송수신하여 상기 복수의 설비를 제어하는 제어부를 포함할 수 있다.
본 발명의 제 2 측면에 따른 설비 제어 서버에 의해 수행되는 설비를 제어하는 방법은 복수의 설비 각각에 대하여 적어도 하나의 통신 프로토콜에 기초한 적어도 하나의 표준 패킷 및 상기 적어도 하나의 표준 패킷으로부터 변형된 적어도 하나의 변형 패킷을 포함하는 복수의 요청 패킷을 생성하는 단계; 상기 생성된 복수의 요청 패킷을 상기 복수의 설비로 전송하고, 상기 복수의 설비로부터 응답된 응답 패킷을 수신하는 단계; 상기 복수의 요청 패킷 및 상기 복수의 응답 패킷을 상기 복수의 설비에 대한 정보와 매핑하여 저장하는 단계; 상기 복수의 요청 패킷 및 상기 복수의 응답 패킷에 기초하여 상기 복수의 응답 패킷의 패턴을 분석하여 상기 복수의 설비 각각과 송수신하기 위한 패킷의 형태를 결정하는 단계; 및 상기 결정된 패킷의 형태에 기초하여 상기 복수의 설비 각각과 송수신하여 상기 복수의 설비를 제어하는 단계를 포함할 수 있다.
본 발명의 제 3 측면에 따른 설비 제어 서버에 의해 수행되는 설비를 제어하는 명령어들의 시퀀스를 포함하는 컴퓨터 판독가능 기록매체에 저장된 컴퓨터 프로그램은 컴퓨팅 장치에 의해 실행될 경우, 복수의 설비 각각에 대하여 적어도 하나의 통신 프로토콜에 기초한 적어도 하나의 표준 패킷 및 상기 적어도 하나의 표준 패킷으로부터 변형된 적어도 하나의 변형 패킷을 포함하는 복수의 요청 패킷을 생성하고, 상기 생성된 복수의 요청 패킷을 상기 복수의 설비로 전송하고, 상기 복수의 설비로부터 응답된 응답 패킷을 수신하고, 상기 복수의 요청 패킷 및 상기 복수의 응답 패킷을 상기 복수의 설비에 대한 정보와 매핑하여 저장하고, 상기 복수의 요청 패킷 및 상기 복수의 응답 패킷에 기초하여 상기 복수의 응답 패킷의 패턴을 분석하여 상기 복수의 설비 각각과 송수신하기 위한 패킷의 형태를 결정하고, 상기 결정된 패킷의 형태에 기초하여 상기 복수의 설비 각각과 송수신하여 상기 복수의 설비를 제어하는 명령어들의 시퀀스를 포함할 수 있다.
상술한 과제 해결 수단은 단지 예시적인 것으로서, 본 발명을 제한하려는 의도로 해석되지 않아야 한다. 상술한 예시적인 실시예 외에도, 도면 및 발명의 상세한 설명에 기재된 추가적인 실시예가 존재할 수 있다.
전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 본 발명은 복수의 설비마다 통신 프로토콜에 기초하여 생성된 복수의 요청 패킷을 각 설비로 전송하고, 복수의 설비로부터 응답된 응답 패킷과 요청 패킷에 기초하여 응답 패킷의 패턴을 분석하여 각 설비와 송수신하기 위한 패킷의 형태를 결정할 수 있다.
이를 통해, 본 발명은 응답 패킷 분석을 통해 설비와의 안정적인 통신을 수행할 수 있고, 다양한 설비의 응답에 대한 대처가 가능하다.
또한, 본 발명은 응답 패킷 분석을 통해 설비의 정상 및 이상 신호를 자동으로 판별하기 때문에 사용자가 직접 패킷을 분석할 필요가 없다.
또한, 본 발명은 설비 제조사의 부재 또는 프로토콜 문서의 부재 등으로 인한 패킷 분석의 어려움 해결할 수 있다.
또한, 본 발명은 설비와의 통신을 위한 통신 장비 구축이 필요없기 때문에 설비의 제어를 위한 시간을 단축할 수 있다.
도 1은 본 발명의 일 실시예에 따른, 설비 제어 서버의 블록도이다.
도 2a 내지 2b는 설비가 송수신하는 패킷의 형태를 설명하기 위한 도면이다.
도 3a 내지 3c는 본 발명의 일 실시예에 따른, 요청 패킷을 생성하는 방법을 설명하기 위한 도면이다.
도 4a 내지 4f는 본 발명의 일 실시예에 따른, 응답 패킷의 패턴을 분석하는 방법을 설명하기 위한 도면이다.
도 5a 내지 5d는 본 발명의 일 실시예에 따른, 응답 패킷의 필드 구조를 분석하는 방법을 설명하기 위한 도면이다.
도 6은 본 발명의 일 실시예에 따른, 설비의 제어하는 방법을 나타낸 흐름도이다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
본 명세서에 있어서 '부(部)'란, 하드웨어에 의해 실현되는 유닛(unit), 소프트웨어에 의해 실현되는 유닛, 양방을 이용하여 실현되는 유닛을 포함한다. 또한, 1 개의 유닛이 2 개 이상의 하드웨어를 이용하여 실현되어도 되고, 2 개 이상의 유닛이 1 개의 하드웨어에 의해 실현되어도 된다.
본 명세서에 있어서 단말 또는 디바이스가 수행하는 것으로 기술된 동작이나 기능 중 일부는 해당 단말 또는 디바이스와 연결된 서버에서 대신 수행될 수도 있다. 이와 마찬가지로, 서버가 수행하는 것으로 기술된 동작이나 기능 중 일부도 해당 서버와 연결된 단말 또는 디바이스에서 수행될 수도 있다.
이하, 첨부된 구성도 또는 처리 흐름도를 참고하여, 본 발명의 실시를 위한 구체적인 내용을 설명하도록 한다.
도 1은 본 발명의 일 실시예에 따른, 설비 제어 서버(10)의 블록도이다.
도 1을 참조하면, 설비 제어 서버(10)는 패킷 생성부(100), 통신부(110), 저장부(120), 패킷 결정부(130) 및 제어부(140)를 포함할 수 있다. 다만, 도 1에 도시된 설비 제어 서버(10)는 본 발명의 하나의 구현 예에 불과하며, 도 1에 도시된 구성요소들을 기초로 하여 여러 가지 변형이 가능하다.
이하에서는 도 2a 내지 5d를 함께 참조하여 도 1을 설명하기로 한다.
도 2a 내지 2b는 설비가 송수신하는 패킷의 형태를 나타낸 도면이다. 도 2a를 참조하면, 설비의 제조 업체는 설비를 개발할 때, 설비에 변형된 산업용 프로토콜을 적용한다. 즉, 동일한 산업용 프로토콜(예컨대, Modbus)이라도 설비의 제조 업체(A 제조사, B 제조사)에 따라 설비가 송수신하는 패킷(즉, 요청 패킷 및 응답 패킷)의 구조가 다르다.
또한, 도 2b를 참조하면, 하나의 설비에서 복수의 변형된 산업용 프로토콜이 적용되는 경우도 있다.
이와 같이, 설비의 제조사마다 산업용 프로토콜을 변형하여 설비를 개발하며, 하나의 설비에서 복수의 변형된 산업용 프로토콜이 적용됨에 따라 송수신되는 패킷의 구조가 매우 다양하기 때문에 프로토콜 분석에 큰 어려움이 있다.
이를 해결하기 위해, 본 발명은 효과적인 프로토콜 분석을 통해 각 설비와 송수신하기 위한 패킷의 형태를 결정하여 각 설비와의 안정적인 통신이 가능하다.
통신부(110)는 복수의 설비 각각과 통신을 수행하고, 각 설비에 대한 정보를 수집할 수 있다. 이 때, 수집된 설비에 대한 정보는 각 설비별로 설비 정보 테이블(도 3a 참조)에 저장될 수 있다.
여기서, 복수의 설비는 예를 들어, 열원 설비(예컨대, 냉동기, 보일러), 기계 설비(예컨대, 공조기, 열교환기), 레트로핏(Retrofit) 설비(예컨대, 히트 펌프) 등을 포함할 수 있다.
도 3a를 참조하면, 설비 정보 테이블에 저장되는 설비에 대한 정보는 설비의 제조사 정보(301), 설비의 제품명(303), 설비의 IP 정보(305) 및 Port 정보(307), 설비의 통신 프로토콜 정보(309), 설비의 신호 종류(311) 및 태그 정보(313) 중 적어도 하나를 포함할 수 있다. 여기서, 설비의 IP 정보(305) 및 Port 정보(307)는 설비 제어 서버(10)가 설비와의 통신을 시도하기 위해 사용되는 통신 접속 정보이다. 또한, 설비의 통신 프로토콜 정보(309)는 변형 전의 표준 프로토콜로서, 후술하는 바와 같이 각 설비와 통신하기 위한 패킷의 형태를 결정함에 있어서 표준 패킷을 생성하는데 이용된다.
패킷 생성부(100)는 복수의 설비 각각에 대하여 적어도 하나의 통신 프로토콜에 기초한 적어도 하나의 표준 패킷 및 적어도 하나의 표준 패킷으로부터 변형된 적어도 하나의 변형 패킷을 포함하는 복수의 요청 패킷을 생성할 수 있다. 여기서, 복수의 요청 패킷은 서로 상이한 복수의 필드로 구성된 패킷일 수 있다.
저장부(120)는 복수의 설비별로 생성된 복수의 요청 패킷을 각 설비에 대한 정보와 매핑하여 데이터베이스에 저장할 수 있다.
도 3b 및 도 3c를 함께 참조하면, 패킷 생성부(100)는 복수의 설비(20) 각각에 설정된 통신 프로토콜(22)에 기초하여 복수의 설비(20)별 표준 패킷을 생성하고, 각 설비(20)의 표준 패킷으로부터 변형된 변형 패킷을 각 설비(20)별로 생성할 수 있다.
예를 들어, 패킷 생성부(100)는 제 1 설비의 통신 프로토콜 정보, 제 1 설비와의 통신을 위한 IP 정보 및 Port 정보 중 적어도 하나에 기초하여 복수의 필드를 포함하는 표준 패킷을 생성할 수 있다. 또한, 패킷 생성부(100)는 제 1 설비의 표준 패킷에 기초하여 표준 패킷으로부터 변형된 변형 패킷을 생성할 수 있다.
구체적으로, 패킷 생성부(100)는 제 1 설비의 통신 프로토콜 정보에 기초하여 프로토콜 프레임 구조를 생성하고, 생성된 프로토콜 프레임 구조에 기초하여 복수의 필드를 포함하는 표준 패킷을 생성하고, 해당 복수의 필드를 변경하여 다양한 변형 패킷을 생성할 수 있다. 여기서, 변형 패킷은 표준 패킷을 구성하는 복수의 필드 중 일부가 변형된 패킷이거나 특정 필드가 추가된 패킷이거나 표준 패킷을 구성하는 복수의 필드의 위치가 변경된 패킷일 수 있다.
이 때, 제 1 설비의 표준 패킷 및 변형 패킷을 포함하는 복수의 요청 패킷은 서로 상이한 복수의 필드로 구성되어 있다.
예를 들어, 패킷 생성부(100)는 제 2 설비의 통신 프로토콜 정보를 알지 못하는 경우, 다른 설비들에서 사용되는 복수의 통신 프로토콜마다 표준 패킷을 생성하고, 각 통신 프로토콜에 대한 표준 패킷으로부터 변형된 변형 패킷을 생성할 수 있다.
도 3b를 참조하면, 통신부(110)는 복수의 설비별(20)로 생성된 복수의 요청 패킷을 복수의 설비(20)로 전송하고, 복수의 설비(20)로부터 요청 패킷에 대한 응답 패킷을 수신할 수 있다. 예를 들어, 통신부(110)는 기설정된 시간 간격마다 각 설비(20)에게 복수의 요청 패킷을 전송할 수 있다.
예를 들어, 통신부(110)는 제 1 설비에 대하여 생성된 복수의 요청 패킷을 순차적으로 제 1 설비로 전송하고, 각 요청 패킷에 대한 응답 패킷을 제 1 설비로부터 수신할 수 있다.
여기서, 통신부(110)는 제 1 설비로부터 응답 패킷을 수신하지 못하거나 요청 패킷과 동일한 패킷을 응답 패킷으로 수신할 수 있다.
저장부(120)는 복수의 요청 패킷 및 각 요청 패킷에 대한 복수의 응답 패킷을 복수의 설비에 대한 정보와 매핑하여 저장할 수 있다. 예를 들어, 저장부(120)는 제 1 설비로부터 제 1 요청 패킷에 대한 제 1 응답 패킷을 수신한 경우, 제 1 요청 패킷과 제 1 응답 패킷이 서로 동일한 패킷이 아닌 경우(즉, 정상적인 통신인 경우), 제 1 요청 패킷 및 제 1 응답 패킷을 제 1 설비에 대한 정보와 매핑하여 저장할 수 있다.
예를 들어, 도 4a를 참조하면, 통신부(110)는 제 1 설비로 요청 패킷이 전송된 이후, 제 1 설비로부터 응답 패킷이 수신되는지를 확인하고(S401), 제 1 설비로부터 수신된 응답 패킷이 존재하지 않은 경우, 제 1 설비는 해당 요청 패킷으로 통신이 불가능하다고 판단될 수 있다(S403).
한편, 제 1 설비로부터 응답 패킷을 수신한 경우, 통신부(110)는 수신된 응답 패킷이 설비요청 패킷과 동일한지 여부를 판단할 수 있다(S405). 응답 패킷이 설비요청 패킷과 동일할 경우, 제 1 설비와 해당 요청 패킷을 통해 정상적인 통신이 불가능하거나 설비통신 오류가 발생된다고 판단될 수 있다(S407).
저장부(120)는 수신된 응답 패킷이 설비요청 패킷과 동일하지 않다고 판단된 경우, 해당 요청 패킷과 해당 응답 패킷을 제 1 설비에 대한 정보와 매핑하여 데이터베이스에 저장할 수 있다(S409).
다시 도 1로 돌아오면, 패킷 결정부(130)는 복수의 요청 패킷 및 복수의 응답 패킷에 기초하여 복수의 응답 패킷의 패턴을 분석하여 복수의 설비 각각과 송수신하기 위한 패킷의 형태를 결정할 수 있다.
패킷 결정부(130)는 복수의 응답 패킷을 바이트 단위로 분할하고, 각 바이트 단위의 데이터를 문자열로 변환할 수 있다.
패킷 결정부(130)는 문자열로 변환된 복수의 응답 패킷의 패턴을 분석할 수 있다.
패킷 결정부(130)는 문자열로 변환된 복수의 응답 패킷의 패턴으로부터 고정 패턴의 필드, 제한적인 패턴의 필드 및 변동 패턴의 필드를 추출하고, 이에 기초하여 복수의 설비 각각과 송수신하기 위한 패킷의 형태를 결정할 수 있다.
예를 들어, 도 4b를 참조하면, 패킷 결정부(130)는 제 1 설비로부터 수신된 복수의 요청 패킷에 대한 복수의 응답 패킷((411-1 내지 411-5)) 각각에 포함된 데이터를 바이트 단위로 분리할 수 있다. 패킷 결정부(130)는 후술하는 바와 같이, 바이트 단위의 데이터를 식별 및 탐색하여 패턴을 분석하기 위해 바이트 단위의 데이터를 인덱스로 관리할 수 있다. 여기서, 요청 패킷이 상이하기 때문에 복수의 응답 패킷((411-1 내지 411-5))의 총 길이는 서로 상이할 수 있다. 예를 들어, 응답 패킷(411-1)은 10 바이트이고, 응답 패킷(411-5)은 13 바이트일 수 있다.
도 4c를 참조하면, 패킷 결정부(130)는 바이트 단위로 분류된 복수의 응답 패킷(413) 각각에 포함된 바이트 단위의 데이터를 문자열(415)로 변환할 수 있다.
잠시 도 4d를 참조하여 산업용 통신 프로토콜의 패킷의 구조를 살펴보면, 요청 패킷은 고정 패턴의 필드 및 제한적 패턴의 필드로 구성되어 있고, 응답 패킷은 고정 패턴의 필드, 제한적 패턴의 필드 및 변동 패턴의 필드로 구성되어 있다.
여기서, 고정 패턴의 필드는 통신 프로토콜에 대한 고유 속성을 나타내는 부분이고, 제한적인 패턴의 필드는 제한적으로 변동 가능한 필드로서, 설비와 송수신함에 있어 필요한 정보를 담는 부분(예컨대, 데이터를 읽고자 하는 명령 정보, 데이터를 쓰고자 하는 명령 정보, 설비의 식별 정보 등)이고, 변동 패턴의 필드는 요청 패킷에 따라 변동되는 필드로서, 설비요청 패킷에 대한 실질적인 응답 데이터를 나타낸 부분이다. 이 때, 응답 패킷의 변동 패턴의 필드에 포함되는 데이터는 예를 들어, 설비의 최적 제어를 위해 사용되는 데이터이다.
잠시 도 4e를 참조하여 표준 프로토콜의 통신과 변형된 프로토콜의 통신에 따른 패킷의 구조를 살펴보기로 한다.
도 4e를 참조하면, 표준 프로토콜(417)의 경우, 요청 패킷 'AAA'에 대하여 'AAABBBB'(여기서, A(3바이트)는 고정 패턴 및 제한적인 패턴의 필드, B(4바이트)는 변동 패턴의 필드)와 같은 형태의 응답 패킷이 응답되도록 정의되어 있다.
이에 반해, 변형된 프로토콜(419)의 경우, 요청 패킷 'AAA'에 대하여 'AXAABBBB' 또는 'XAAABBBB' (여기서, A는 고정 패턴 및 제한적인 패턴의 필드, B는 변동 패턴의 필드, X는 제조사의 커스터마이징에 의해 추가된 필드)와 같은 형태의 응답 패킷이 응답될 수 있다.
즉, 변형된 프로토콜(419)의 응답 패킷은 표준 프로토콜(417)에 따른 응답 패킷 내의 임의의 위치에 추가적인 필드가 삽입되어 있는 형태로 나타난다.
변형된 프로토콜(419)의 경우, 표준 프로토콜(417)에 따른 응답 패킷의 필드 구조를 고려하여 응답 패킷('AXAABBBB' 또는 'XAAABBBB')에서 3바이트(즉, 고정 패턴 및 제한적인 패턴의 필드)를 제외하여도 'ABBBB'가 남게 되어 정상적인 데이터를 파악하기 어렵다.
이러한 문제점을 해결하기 위해 본 발명은 응답 패킷을 각 바이트 단위로 나누어 응답 패킷을 고정 패턴의 필드, 제한적인 패턴의 필드, 변동 패턴의 필드로 구분한 후, 요청 패킷과의 비교를 통해 응답 패킷의 구조를 파악할 수 있다.
다시 도 4c로 돌아오면, 패킷 결정부(130)는 문자열(415)로 변환된 제 1 설비의 복수의 응답 패킷으로부터 고정 패턴의 필드, 제한적인 패턴의 필드 및 변동 패턴의 필드를 추출할 수 있다.
패킷 결정부(130)는 추출된 고정 패턴의 필드로부터 통신 프로토콜에 대한 정보(예컨대, 통신 프로토콜의 헤더(Header), 식별자(Identifier) 등을 포함하는 통신 프로토콜 고유 정보)를 도출하고, 추출된 제한적인 패턴의 필드로부터 설비 제어 서버(10)와 복수의 설비 간의 통신에 필요한 정보(예컨대, 제 1 설비의 동작 데이터가 아닌 명령어(command), 함수(function), 길이(length), 오류 검출(CRC), 타입 정보와 같은 통신 옵션 정보)를 도출하고, 추출된 변동 패턴의 필드로부터 응답 데이터(예컨대, 제 1 설비의 동작 데이터 등)를 도출할 수 있다.
저장부(120)는 고정 패턴의 필드에 해당하는 인덱스에 기초하여 고정 패턴의 필드를 구조화하고, 제한적 패턴의 필드에 해당하는 인덱스에 기초하여 제한적 패턴의 필드를 구조화하고, 변동 패턴의 필드에 해당하는 인덱스에 기초하여 변동 패턴의 필드를 구조화할 수 있다. 또한, 저장부(120)는 각 구조화된 패턴의 필드에 기초하여 확립된 제 1 설비의 통신 프로토콜에 대한 프레임 구조(즉, 패킷의 형태)에 대한 정보를 제 1 설비에 대한 정보와 매핑하여 데이터베이스에 저장할 수 있다.
도 4f를 참조하면, 패킷 결정부(130)는 제 1 설비의 복수의 응답 패킷의 패턴으로부터 추출된 고정 패턴의 필드, 제한적인 패턴의 필드 및 변동 패턴의 필드에 기초하여 제 1 설비의 통신 프로토콜 변경 여부를 판단할 수 있다. 또한, 패킷 결정부(130)는 제 1 설비의 복수의 응답 패킷의 패턴으로부터 추출된 고정 패턴의 필드, 제한적인 패턴의 필드 및 변동 패턴의 필드에 기초하여 제 1 설비의 통신 프로토콜에 대한 프레임 구조(즉, 패킷의 형태)를 확립할 수 있다.
저장부(120)는 패킷 결정부(130)에 의해 제 1 설비에 대한 정보 중 통신 프로토콜 정보가 변경되었음이 확인된 경우, 제 1 설비의 통신 프로토콜 정보에 대한 변경 정보(예컨대, 제 1 설비의 패킷 형태가 M1 → M2로 변경)를 설비 정보 테이블에 반영할 수 있다.
다시 도 1로 돌아오면, 패킷 결정부(130)는 동일 요청 패킷에 대한 각 설비의 시간별 응답 패킷의 비교 결과와 동일 요청 패킷에 대한 동일 시간에서의 각 설비별 응답 패킷의 비교 결과 및 동일 요청 패킷 간의 필드 구조 분석을 통해 각 설비 각각의 송수신하기 위한 패킷의 형태를 결정할 수 있다.
예를 들어, 도 5a를 참조하면, 패킷 결정부(130)는 동일 요청 패킷에 대한 제 1 설비에서의 시간별 응답 패킷(501)을 비교하여 제 1 비교 결과를 도출하고, 동일 요청 패킷에 대한 제 1 시간에서의 각 설비의 응답 패킷(503)을 비교하여 제 2 비교 결과를 도출한 후, 제 1 비교 결과, 제 2 비교 결과 및 동일 요청 패킷을 비교함으로써 제 1 설비와 송수신하기 위한 패킷의 형태를 결정할 수 있다.
패킷 결정부(130)는 동일 요청 패킷에 대한 각 설비의 시간별 응답 패킷을 비교한 비교 결과에 기초하여 응답 패킷의 패턴을 분석할 수 있다.
예를 들어, 도 5b를 참조하면, 패킷 결정부(130)는 동일 요청 패킷에 대한 제 1 설비의 시간별 응답 패킷(505)을 문자열로 변환하여 패턴화하고, 동일 요청 패킷에 대한 제 2 설비의 시간별 응답 패킷(507)을 문자열로 변환하여 패턴화하고, 동일 요청 패킷에 대한 제 3 설비의 시간별 응답 패킷(509)을 문자열로 변환하여 패턴화할 수 있다.
이어서, 패킷 결정부(130)는 제 1 설비의 응답 패턴의 패턴화 결과(511), 제 2 설비의 응답 패턴의 패턴화 결과(513) 및 제 3 설비의 응답 패턴의 패턴화 결과(515)를 병합하고, 병합한 제 1 병합 결과(517)에 기초하여 응답 패킷의 패턴을 분석할 수 있다.
패킷 결정부(130)는 병합한 제 1 병합 결과(517)에서 인덱스 1~4에 해당되는 응답 패킷의 문자열(519)의 경우, 패턴 변화가 없고, 인덱스 5에 해당되는 응답 패킷의 문자열(521)의 경우, 패턴 변화가 나타났음을 확인할 수 있다. 이 경우, 패킷 결정부(130)는 인덱스 1~4에 해당하는 필드는 고정 패턴 및 제한적인 패턴의 필드이고, 인덱스 5에 해당하는 필드는 변동 필드임을 추출할 수 있다.
이와 같이, 설비별로 응답 패킷을 병합하여 분석함으로써 제 2 설비와 같이 가동되지 않은 설비로부터 수신된 응답 패킷의 경우, 응답 패킷을 구성하는 변동 패턴의 필드에 응답 데이터의 변화가 없어서, 해당 응답 데이터를 고정 패턴의 필드에 포함된 데이터로 분류될 수 있는 오류를 차단할 수 있다.
패킷 결정부(130)는 동일 요청 패킷에 대한 동일 시간의 각 설비의 응답 패킷을 비교한 비교 결과에 기초하여 응답 패킷의 패턴을 분석할 수 있다.
예를 들어, 도 5c를 참조하면, 패킷 결정부(130)는 동일 요청 패킷에 대하여 제 1 시간에 수신된 각 설비의 응답 패킷(523), 제 2 시간에 수신된 각 설비의 응답 패킷(525) 및 제 3 시간에 수신된 각 설비의 응답 패킷(527)을 문자열로 변환하여 패턴화할 수 있다.
이어서, 패킷 결정부(130)는 제 1 시간에서의 각 응답 패킷의 패턴화 결과(529), 제 2 시간에서의 각 응답 패킷의 패턴화 결과(531) 및 제 3 시간에서의 응답 패킷의 패턴화 결과(533)를 병합하고, 병합한 제 2 병합 결과(535)에 기초하여 응답 패킷의 패턴을 분석할 수 있다.
패킷 결정부(130)는 병합한 제 2 병합 결과(535)에서 인덱스 1, 2, 4에 해당되는 응답 패킷의 문자열의 경우, 패턴 변화가 없고, 인덱스 3, 5에 해당되는 응답 패킷의 문자열의 경우 패턴 변화가 나타났음을 확인할 수 있다. 이 경우, 패킷 결정부(130)는 인덱스 1, 2, 4에 해당하는 필드는 고정 패턴 및 제한적인 패턴의 필드이고, 인덱스 3, 5에 해당하는 필드는 변동 필드임을 추출할 수 있다.
도 5b, 도 5c 및 도 5d를 함께 참조하면, 패킷 결정부(130)는 제 1 병합 결과(517)로부터 분석된 고정된 패턴을 보이는 인덱스(1, 2, 3, 4)와 제 2 병합 결과(535)로부터 분석된 고정된 패턴을 보이는 인덱스(1, 2, 4)에 기초하여 고정 패턴의 필드 및 제한적인 패턴의 필드를 추출할 수 있다.
설비예를 들면, 동일 요청 패킷 '123'과 함께 제 1 병합 결과(517) 및 제 2 병합 결과(535)를 비교하면, 제 1 병합 결과(517)에서 인덱스 3에 해당되는 문자열이 고정된 패턴을 보였지만, 제 2 병합 결과(535)에서는 인덱스 3에 해당되는 문자열이 제한적인 패턴을 보인 것으로 보아, 인덱스 3은 설비별 고유 정보를 나타내는 제한적인 패턴의 필드에 해당하는 것으로 파악될 수 있다.
또한, 제 1 병합 결과(517)에서 인덱스 5에 해당되는 문자열이 변화되는 패턴을 보이고, 제 2 병합 결과(535)에서도 인덱스 5에 해당되는 문자열이 변화되는 패턴을 보인 것으로 보아, 인덱스 5는 변동 패턴의 필드에 해당하는 것으로 파악될 수 있다.
제어부(140)는 결정된 패킷의 형태에 기초하여 복수의 설비 각각과 송수신하여 복수의 설비를 제어할 수 있다.
한편, 당업자라면, 패킷 생성부(100), 통신부(110), 저장부(120), 패킷 결정부(130) 및 제어부(140) 각각이 분리되어 구현되거나, 이 중 하나 이상이 통합되어 구현될 수 있음을 충분히 이해할 것이다.
도 6은 본 발명의 일 실시예에 따른, 설비의 제어하는 방법을 나타낸 흐름도이다.
도 6을 참조하면, 단계 S601에서 설비 제어 서버(10)는 복수의 설비 각각에 대하여 적어도 하나의 통신 프로토콜에 기초한 적어도 하나의 표준 패킷 및 적어도 하나의 표준 패킷으로부터 변형된 적어도 하나의 변형 패킷을 포함하는 복수의 요청 패킷을 생성할 수 있다.
단계 S603에서 설비 제어 서버(10)는 생성된 복수의 요청 패킷을 복수의 설비로 전송하고, 복수의 설비로부터 응답된 응답 패킷을 수신할 수 있다.
단계 S605에서 설비 제어 서버(10)는 복수의 요청 패킷 및 복수의 응답 패킷을 복수의 설비에 대한 정보와 매핑하여 저장할 수 있다.
단계 S607에서 설비 제어 서버(10)는 복수의 요청 패킷 및 복수의 응답 패킷에 기초하여 복수의 응답 패킷의 패턴을 분석하여 복수의 설비 각각과 송수신하기 위한 패킷의 형태를 결정할 수 있다.
단계 S609에서 설비 제어 서버(10)는 결정된 패킷의 형태에 기초하여 복수의 설비 각각과 송수신하여 복수의 설비를 제어할 수 있다.
상술한 설명에서, 단계 S601 내지 S609는 본 발명의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다.
본 발명의 일 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
10: 설비 제어 서버
100: 패킷 생성부
110: 통신부
120: 저장부
130: 패킷 결정부

Claims (19)

  1. 설비를 제어하는 서버에 있어서,
    복수의 설비 각각에 대하여 적어도 하나의 통신 프로토콜에 기초한 적어도 하나의 표준 패킷 및 상기 적어도 하나의 표준 패킷으로부터 변형된 적어도 하나의 변형 패킷을 포함하는 복수의 요청 패킷을 생성하는 패킷 생성부;
    상기 생성된 복수의 요청 패킷을 상기 복수의 설비로 전송하고, 상기 복수의 설비로부터 응답된 복수의 응답 패킷을 수신하는 통신부;
    상기 복수의 요청 패킷 및 상기 복수의 응답 패킷을 상기 복수의 설비에 대한 정보와 매핑하여 저장하는 저장부;
    상기 복수의 요청 패킷 및 상기 복수의 응답 패킷에 기초하여 상기 복수의 응답 패킷의 패턴을 분석하여 상기 복수의 설비 각각과 송수신하기 위한 패킷의 형태를 결정하는 패킷 결정부; 및
    상기 결정된 패킷의 형태에 기초하여 상기 복수의 설비 각각과 송수신하여 상기 복수의 설비를 제어하는 제어부
    를 포함하고,
    상기 패킷 결정부는
    상기 복수의 응답 패킷에 포함된 바이트 단위의 데이터를 문자열로 변환하고,
    상기 문자열로 변환된 복수의 응답 패킷의 패턴을 분석하고,
    상기 문자열로 변환된 복수의 응답 패킷으로부터 고정 패턴의 필드, 제한적인 패턴의 필드 및 변동 패턴의 필드를 추출하는 것인, 설비 제어 서버.
  2. 제 1 항에 있어서,
    상기 패킷 생성부는
    제 1 설비의 통신 프로토콜 정보, 상기 제 1 설비와의 통신을 위한 아이피(IP) 정보 및 포트(Port) 정보 중 적어도 하나에 기초한 복수의 필드를 포함하는 상기 표준 패킷을 생성하는 것인, 설비 제어 서버.
  3. 제 2 항에 있어서,
    상기 복수의 요청 패킷은 서로 상이한 복수의 필드로 구성된 패킷인 것인, 설비 제어 서버.
  4. 제 1 항에 있어서,
    상기 저장부는
    제 1 요청 패킷을 수신한 제 1 설비로부터 제 1 응답 패킷을 수신한 경우,
    상기 제 1 요청 패킷과 상기 제 1 응답 패킷이 서로 동일한 패킷이 아닌 경우, 상기 제 1 요청 패킷 및 상기 제 1 응답 패킷을 상기 제 1 설비에 대한 정보와 매핑하여 저장하는 것인, 설비 제어 서버.
  5. 삭제
  6. 삭제
  7. 제 1 항에 있어서,
    상기 패킷 결정부는 상기 고정 패턴의 필드로부터 통신 프로토콜에 대한 정보를 도출하고,
    상기 제한적인 패턴의 필드로부터 상기 서버와 상기 복수의 설비 간의 통신에 필요한 정보를 도출하고,
    상기 변동 패턴의 필드로부터 응답 데이터를 도출하는 것인, 설비 제어 서버.
  8. 설비를 제어하는 서버에 있어서,
    복수의 설비 각각에 대하여 적어도 하나의 통신 프로토콜에 기초한 적어도 하나의 표준 패킷 및 상기 적어도 하나의 표준 패킷으로부터 변형된 적어도 하나의 변형 패킷을 포함하는 복수의 요청 패킷을 생성하는 패킷 생성부;
    상기 생성된 복수의 요청 패킷을 상기 복수의 설비로 전송하고, 상기 복수의 설비로부터 응답된 복수의 응답 패킷을 수신하는 통신부;
    상기 복수의 요청 패킷 및 상기 복수의 응답 패킷을 상기 복수의 설비에 대한 정보와 매핑하여 저장하는 저장부;
    상기 복수의 요청 패킷 및 상기 복수의 응답 패킷에 기초하여 상기 복수의 응답 패킷의 패턴을 분석하여 상기 복수의 설비 각각과 송수신하기 위한 패킷의 형태를 결정하는 패킷 결정부; 및
    상기 결정된 패킷의 형태에 기초하여 상기 복수의 설비 각각과 송수신하여 상기 복수의 설비를 제어하는 제어부
    를 포함하고,
    상기 패킷 결정부는
    동일 요청 패킷에 대한 각 설비의 시간별 응답 패킷을 비교한 비교 결과에 기초하여 응답 패킷의 패턴을 분석하는 것인, 설비 제어 서버.
  9. 설비를 제어하는 서버에 있어서,
    복수의 설비 각각에 대하여 적어도 하나의 통신 프로토콜에 기초한 적어도 하나의 표준 패킷 및 상기 적어도 하나의 표준 패킷으로부터 변형된 적어도 하나의 변형 패킷을 포함하는 복수의 요청 패킷을 생성하는 패킷 생성부;
    상기 생성된 복수의 요청 패킷을 상기 복수의 설비로 전송하고, 상기 복수의 설비로부터 응답된 복수의 응답 패킷을 수신하는 통신부;
    상기 복수의 요청 패킷 및 상기 복수의 응답 패킷을 상기 복수의 설비에 대한 정보와 매핑하여 저장하는 저장부;
    상기 복수의 요청 패킷 및 상기 복수의 응답 패킷에 기초하여 상기 복수의 응답 패킷의 패턴을 분석하여 상기 복수의 설비 각각과 송수신하기 위한 패킷의 형태를 결정하는 패킷 결정부; 및
    상기 결정된 패킷의 형태에 기초하여 상기 복수의 설비 각각과 송수신하여 상기 복수의 설비를 제어하는 제어부
    를 포함하고,
    상기 패킷 결정부는
    동일 요청 패킷에 대한 동일 시간의 각 설비의 응답 패킷을 비교한 비교 결과에 기초하여 응답 패킷의 패턴을 분석하는 것인, 설비 제어 서버.
  10. 설비 제어 서버에 의해 수행되는 설비를 제어하는 방법에 있어서,
    복수의 설비 각각에 대하여 적어도 하나의 통신 프로토콜에 기초한 적어도 하나의 표준 패킷 및 상기 적어도 하나의 표준 패킷으로부터 변형된 적어도 하나의 변형 패킷을 포함하는 복수의 요청 패킷을 생성하는 단계;
    상기 생성된 복수의 요청 패킷을 상기 복수의 설비로 전송하고, 상기 복수의 설비로부터 응답된 복수의 응답 패킷을 수신하는 단계;
    상기 복수의 요청 패킷 및 상기 복수의 응답 패킷을 상기 복수의 설비에 대한 정보와 매핑하여 저장하는 단계;
    상기 복수의 요청 패킷 및 상기 복수의 응답 패킷에 기초하여 상기 복수의 응답 패킷의 패턴을 분석하여 상기 복수의 설비 각각과 송수신하기 위한 패킷의 형태를 결정하는 단계; 및
    상기 결정된 패킷의 형태에 기초하여 상기 복수의 설비 각각과 송수신하여 상기 복수의 설비를 제어하는 단계
    를 포함하고,
    상기 패킷의 형태를 결정하는 단계는
    상기 복수의 응답 패킷에 포함된 바이트 단위의 데이터를 문자열로 변환하는 단계;
    상기 문자열로 변환된 복수의 응답 패킷의 패턴을 분석하는 단계; 및
    상기 문자열로 변환된 복수의 응답 패킷으로부터 고정 패턴의 필드, 제한적인 패턴의 필드 및 변동 패턴의 필드를 추출하는 단계를 포함하는 것인, 설비 제어 방법.
  11. 제 10 항에 있어서,
    상기 복수의 요청 패킷을 생성하는 단계는
    제 1 설비의 통신 프로토콜 정보, 상기 제 1 설비와의 통신을 위한 아이피(IP) 정보 및 포트(Port) 정보 중 적어도 하나에 기초한 복수의 필드를 포함하는 상기 표준 패킷을 생성하는 단계를 포함하는 것인, 설비 제어 방법.
  12. 제 11 항에 있어서,
    상기 복수의 요청 패킷은 서로 상이한 복수의 필드로 구성된 패킷인 것인, 설비 제어 방법.
  13. 제 10 항에 있어서,
    상기 저장하는 단계는
    제 1 요청 패킷을 수신한 제 1 설비로부터 제 1 응답 패킷을 수신한 경우,
    상기 제 1 요청 패킷과 상기 제 1 응답 패킷이 서로 동일한 패킷이 아닌 경우, 상기 제 1 요청 패킷 및 상기 제 1 응답 패킷을 상기 제 1 설비에 대한 정보와 매핑하여 저장하는 것인, 설비 제어 방법.
  14. 삭제
  15. 삭제
  16. 제 10 항에 있어서,
    상기 패킷의 형태를 결정하는 단계는
    상기 고정 패턴의 필드로부터 통신 프로토콜에 대한 정보를 도출하는 단계;
    상기 제한적인 패턴의 필드로부터 상기 서버와 상기 복수의 설비 간의 통신에 필요한 정보를 도출하는 단계; 및
    상기 변동 패턴의 필드로부터 응답 데이터를 도출하는 단계를 포함하는 것인, 설비 제어 방법.
  17. 설비 제어 서버에 의해 수행되는 설비를 제어하는 방법에 있어서,
    복수의 설비 각각에 대하여 적어도 하나의 통신 프로토콜에 기초한 적어도 하나의 표준 패킷 및 상기 적어도 하나의 표준 패킷으로부터 변형된 적어도 하나의 변형 패킷을 포함하는 복수의 요청 패킷을 생성하는 단계;
    상기 생성된 복수의 요청 패킷을 상기 복수의 설비로 전송하고, 상기 복수의 설비로부터 응답된 복수의 응답 패킷을 수신하는 단계;
    상기 복수의 요청 패킷 및 상기 복수의 응답 패킷을 상기 복수의 설비에 대한 정보와 매핑하여 저장하는 단계;
    상기 복수의 요청 패킷 및 상기 복수의 응답 패킷에 기초하여 상기 복수의 응답 패킷의 패턴을 분석하여 상기 복수의 설비 각각과 송수신하기 위한 패킷의 형태를 결정하는 단계; 및
    상기 결정된 패킷의 형태에 기초하여 상기 복수의 설비 각각과 송수신하여 상기 복수의 설비를 제어하는 단계
    를 포함하고,
    상기 패킷의 형태를 결정하는 단계는
    동일 요청 패킷에 대한 각 설비의 시간별 응답 패킷을 비교한 비교 결과에 기초하여 응답 패킷의 패턴을 분석하는 단계를 포함하는 것인, 설비 제어 방법.
  18. 설비 제어 서버에 의해 수행되는 설비를 제어하는 방법에 있어서,
    복수의 설비 각각에 대하여 적어도 하나의 통신 프로토콜에 기초한 적어도 하나의 표준 패킷 및 상기 적어도 하나의 표준 패킷으로부터 변형된 적어도 하나의 변형 패킷을 포함하는 복수의 요청 패킷을 생성하는 단계;
    상기 생성된 복수의 요청 패킷을 상기 복수의 설비로 전송하고, 상기 복수의 설비로부터 응답된 복수의 응답 패킷을 수신하는 단계;
    상기 복수의 요청 패킷 및 상기 복수의 응답 패킷을 상기 복수의 설비에 대한 정보와 매핑하여 저장하는 단계;
    상기 복수의 요청 패킷 및 상기 복수의 응답 패킷에 기초하여 상기 복수의 응답 패킷의 패턴을 분석하여 상기 복수의 설비 각각과 송수신하기 위한 패킷의 형태를 결정하는 단계; 및
    상기 결정된 패킷의 형태에 기초하여 상기 복수의 설비 각각과 송수신하여 상기 복수의 설비를 제어하는 단계
    를 포함하고,
    상기 패킷의 형태를 결정하는 단계는
    동일 요청 패킷에 대한 동일 시간의 각 설비의 응답 패킷을 비교한 비교 결과에 기초하여 응답 패킷의 패턴을 분석하는 단계를 포함하는 것인, 설비 제어 방법.
  19. 설비 제어 서버에 의해 수행되는 설비를 제어하는 명령어들의 시퀀스를 포함하는 컴퓨터 판독가능 기록매체에 저장된 컴퓨터 프로그램에 있어서,
    상기 컴퓨터 프로그램은 컴퓨팅 장치에 의해 실행될 경우,
    복수의 설비 각각에 대하여 적어도 하나의 통신 프로토콜에 기초한 적어도 하나의 표준 패킷 및 상기 적어도 하나의 표준 패킷으로부터 변형된 적어도 하나의 변형 패킷을 포함하는 복수의 요청 패킷을 생성하고,
    상기 생성된 복수의 요청 패킷을 상기 복수의 설비로 전송하고, 상기 복수의 설비로부터 응답된 복수의 응답 패킷을 수신하고,
    상기 복수의 요청 패킷 및 상기 복수의 응답 패킷을 상기 복수의 설비에 대한 정보와 매핑하여 저장하고,
    상기 복수의 요청 패킷 및 상기 복수의 응답 패킷에 기초하여 상기 복수의 응답 패킷의 패턴을 분석하여 상기 복수의 설비 각각과 송수신하기 위한 패킷의 형태를 결정하고, 상기 결정된 패킷의 형태에 기초하여 상기 복수의 설비 각각과 송수신하여 상기 복수의 설비를 제어하는 명령어들의 시퀀스를 포함하고,
    상기 복수의 응답 패킷에 포함된 바이트 단위의 데이터를 문자열로 변환하고, 상기 문자열로 변환된 복수의 응답 패킷의 패턴을 분석하고, 상기 문자열로 변환된 복수의 응답 패킷으로부터 고정 패턴의 필드, 제한적인 패턴의 필드 및 변동 패턴의 필드를 추출하는 명령어들의 시퀀스를 더 포함하는, 컴퓨터 판독가능 기록매체에 저장된 컴퓨터 프로그램.
KR1020200165670A 2020-12-01 2020-12-01 설비를 제어하는 서버, 방법 및 컴퓨터 프로그램 KR102550102B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020200165670A KR102550102B1 (ko) 2020-12-01 2020-12-01 설비를 제어하는 서버, 방법 및 컴퓨터 프로그램
KR1020230082716A KR20230104558A (ko) 2020-12-01 2023-06-27 설비를 제어하는 서버, 방법 및 컴퓨터 프로그램

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200165670A KR102550102B1 (ko) 2020-12-01 2020-12-01 설비를 제어하는 서버, 방법 및 컴퓨터 프로그램

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020230082716A Division KR20230104558A (ko) 2020-12-01 2023-06-27 설비를 제어하는 서버, 방법 및 컴퓨터 프로그램

Publications (2)

Publication Number Publication Date
KR20220076811A KR20220076811A (ko) 2022-06-08
KR102550102B1 true KR102550102B1 (ko) 2023-06-30

Family

ID=81981385

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020200165670A KR102550102B1 (ko) 2020-12-01 2020-12-01 설비를 제어하는 서버, 방법 및 컴퓨터 프로그램
KR1020230082716A KR20230104558A (ko) 2020-12-01 2023-06-27 설비를 제어하는 서버, 방법 및 컴퓨터 프로그램

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020230082716A KR20230104558A (ko) 2020-12-01 2023-06-27 설비를 제어하는 서버, 방법 및 컴퓨터 프로그램

Country Status (1)

Country Link
KR (2) KR102550102B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101121778B1 (ko) * 2004-01-06 2012-03-23 삼성전자주식회사 무선으로 영상기기 주변의 기기를 제어하는 방법 및 장치
US20170255867A1 (en) * 2016-03-01 2017-09-07 Pearson Education, Inc. System and method for automated pattern based alert generation

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102112587B1 (ko) 2015-03-20 2020-05-19 한국전자통신연구원 패킷 감시 장치 및 통신 패킷에 대한 패킷 감시 방법
KR101887077B1 (ko) * 2017-01-24 2018-09-10 엘지전자 주식회사 차량용 전자 디바이스 해킹 테스트 장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101121778B1 (ko) * 2004-01-06 2012-03-23 삼성전자주식회사 무선으로 영상기기 주변의 기기를 제어하는 방법 및 장치
US20170255867A1 (en) * 2016-03-01 2017-09-07 Pearson Education, Inc. System and method for automated pattern based alert generation

Also Published As

Publication number Publication date
KR20230104558A (ko) 2023-07-10
KR20220076811A (ko) 2022-06-08

Similar Documents

Publication Publication Date Title
US6105061A (en) Hierarchically distributed network management system using open system interconnection (OSI) protocols
US8792385B2 (en) Method and device for auto-generating goose signal connection topology from substation level
CN1910854B (zh) 使用元管理信息库的自动更新系统以及方法
US7852860B2 (en) Protocol conversion apparatus, communication apparatus, method and program
US20090327511A1 (en) Message conversion apparatus for integrated monitoring of industrial equipment
CN110912782B (zh) 一种数据采集方法、装置及存储介质
US20190089801A1 (en) Method and device for transforming data
CN100518080C (zh) 用于传送通信网络管理信息的方法和系统
CN114422555B (zh) 一种基于CIM平台可自定义配置IoT数据解析的方法
CN109194751A (zh) 物联网系统的设备添加方法、装置、设备及可读存储介质
US8112498B2 (en) Mapping between objects representing different network systems
KR102550102B1 (ko) 설비를 제어하는 서버, 방법 및 컴퓨터 프로그램
KR100865099B1 (ko) 인터페이스 조절 지원 시스템
CN114124837A (zh) 一种基于被动流量的资产信息发现系统及方法
JP7107046B2 (ja) 制御システム、検索装置および検索プログラム
KR102332727B1 (ko) 발전소 제어망 자산의 트래픽의 분산 저장을 이용한 이상 감지 시스템
CN115442393A (zh) 基于工业互联网标识体系的存量物联设备配置方法及装置
JP7371410B2 (ja) 情報処理装置、及び、情報処理プログラム
US20070022313A1 (en) Notifications in a telecommunications network
KR101980843B1 (ko) 프록시를 경유한 접속 세션정보 확인시스템과 확인방법
JP7107047B2 (ja) 制御システム、検索装置および検索プログラム
KR101919070B1 (ko) 사물인터넷 장치 연동을 위한 메타 모델 조정 시스템 및 방법
CN108804048A (zh) 打印设备的情境和事件驱动的发现优化方法和装置
CN114679429B (zh) 一种基于多云容器平台的业务跨区响应方法
KR20030057921A (ko) 에스엔엠피 망에서 엠아이비 테이블 구조 관리 방법

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant