KR102122959B1 - 일대일 tcp 통신 기반 장비의 연동 이중화 방법 - Google Patents

일대일 tcp 통신 기반 장비의 연동 이중화 방법 Download PDF

Info

Publication number
KR102122959B1
KR102122959B1 KR1020190120679A KR20190120679A KR102122959B1 KR 102122959 B1 KR102122959 B1 KR 102122959B1 KR 1020190120679 A KR1020190120679 A KR 1020190120679A KR 20190120679 A KR20190120679 A KR 20190120679A KR 102122959 B1 KR102122959 B1 KR 102122959B1
Authority
KR
South Korea
Prior art keywords
interlocking
communication connection
equipment
terminal
data
Prior art date
Application number
KR1020190120679A
Other languages
English (en)
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 KR1020190120679A priority Critical patent/KR102122959B1/ko
Application granted granted Critical
Publication of KR102122959B1 publication Critical patent/KR102122959B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/163In-band adaptation of TCP data exchange; In-band control procedures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
    • H04L61/2007
    • H04L61/2076
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5076Update or notification mechanisms, e.g. DynDNS
    • H04L61/6022
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/622Layer-2 addresses, e.g. medium access control [MAC] addresses

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Small-Scale Networks (AREA)

Abstract

본 발명은, TCP 기반을 이용하여 통신하는 장비와 통신하는 연동단의 이중화 지원 시스템 및 이중화 방법에 관한 것으로, 보다 구체적으로, 함정 체계에 탑재되어 사용하는 장비를 감시 및 제어하는 감시/제어 시스템과 장비간에 TCP통신에 이용되는 TCP 프로토콜을 변환하는 연동단에 TCP 이중화 지원시스템을 추가로 구비하여, 하나의 연동단과 장비간에 TCP통신연결에 문제가 발생한 경우, 다른 연동단이 TCP통신연결을 지원하는데 있다.

Description

일대일 TCP 통신 기반 장비의 연동 이중화 방법{Redundancy method for communicating with equipment using one-to-one TCP communication}
본 발명은 TCP 프로토콜을 사용하는 장비와 연동하는 연동단의 이중화 방법에 관한 것으로써, 보다 상세하게는 일대일 통신에 기반을 두고, 개발이 완료되어 수정이 제한된 통신모듈을 가지는 장비와 통신하는 이중화된 연동단의 통신방법에 관한 것이다.
함정 체계에 탑재되는 모든 센서, 무기류 등의 장비는 외부와 통신하기 위해 통신 모듈을 가지고 있으며, 각 장비는 이더넷 기반의 TCP, UDP 통신 및 시리얼 통신과 같은 통신 프로토콜을 채택하여 사용하고 있다.
함정 체계에 탑재된 장비는 연동단을 거쳐 장비를 제어/감시하는 시스템과 통신한다. 모든 장비가 동일한 프로토콜을 사용하도록 개발되어 생산되는 것은 아니기 때문에, 통신 프로토콜을 중간에 변환시켜주는 번역기 역할을 하는 연동단이 필요하다.
최근에는 함정 체계에 탑재되는 연동단의 이중화 구성이 필수처럼 여겨지고 있다.
하지만, 장비는 연동단의 이중화 구성을 고려하지 않고 개발되는 경우가 대다수이다. 왜냐하면 장비는 함정 체계와 별도로 개발되기 때문이다.
따라서 개발이 완료되어 양산 된 장비의 경우에는, 통신 모듈을 연동단의 이중화 구성에 맞추어 수정해야 되는데, 이러한 수정 또한 제한된다. 왜냐하면 TCP 프로토콜을 사용하는 장비의 경우에는 1 대 1 연결을 기반으로 하여, 하나의 클라이언트 혹은 서버와 통신하도록 개발되기 때문이다. 즉 이중화 구성으로 구성된 연동단에 맞추어 통신 모듈을 수정 하는 것은 상당한 시간이나 자원이 필요하다.
이러한 이유로, 종래에는 하나의 IP를 연동단 두 대가 번갈아 가며 사용하는 방식을 사용하였다. 예를 들어 ACTIVE 모드의 연동단이 IP를 사용하다가 통신에 장애가 발생하면 ACTIVE 모드의 연동단의 인터페이스를 비활성화 시킨 후에, 추가로 구비된 STANDBY 연동단의 인터페이스를 활성화시켜 상기와 같은 IP를 사용하는 방식이다. 이러한 방식을 사용하면 장비는, 기존처럼 하나의 목적지 IP 주소와 연동하도록 운용할 수 있어, 통신 모듈의 수정이 필요 없게 된다. 그러나 종래기술을 사용하였을 때, 다음과 같은 문제로 연동단의 이중화 동작에 큰 제약이 발생한다.
첫째로, 소프트웨어에 오류가 발생하는 경우에는 IP의 충돌을 초래할 수 있다. 인터페이스 활성/비활성화를 연동단의 소프트웨어가 담당하기 때문이다. 예를 들어 통신연결에 문제가 발생했음에도 불구하고 ACTIVE 연동단의 인터페이스가 비활성화 되지 않은 경우, 인터페이스가 활성화 된 STANDBY 모드의 연동단과 IP의 중복이 발생하여, 상기 IP의 충돌이 일어난다.
둘째로, 장비가 TCP 프로토콜을 사용할 경우 랜선 단절 등의 비정상적인 인터페이스 오류 상황에선 이중화 동작이 불가능 하다.
TCP는 서버/클라이언트 방식 기반으로 클라이언트가 서버로 연결 요청 후 서버가 이를 수락하여 TCP 세션을 생성하고 데이터를 주고 받다가 마지막엔 한 쪽이 연동 종료 요청을 하고 다른 한쪽이 수락을 해야 연동을 끝맺을 수 있다.
해당 세션이 살아 있는 동안에는 같은 클라이언트 주소로부터 연결 요청은 무시하게 된다. TCP 세션은 물리적인 연결이 아닌 일종의 가상 연결이기 때문에, 랜선 단절 등의 물리적인 인터페이스 오류가 발생하더라도 TCP 세션은 여전히 유지되고 있는 경우가 있다. 이런 경우에선 이미 존재하는 TCP 세션에 대해서 또 다른 연결을 수립하지 않는다. 따라서 새로운 연동단이 같은 주소 정보를 가지고 TCP 연결 요청을 해도 이는 받아들여지지 않는다. 즉 이중화 동작이 불가능 하다.
따라서, 연동단의 이중화 동작이 확실하게 이루어 지기 위하여, 이를 지원하는 시스템 및 방법이 필요하다.
본 발명은 이러한 문제를 해결하고자 TCP 이중화 지원 시스템을 연동단에 탑재하여 즉각적으로 활성화된 연동단이 통신을 이어갈 수 있도록 지원하는 것을 목적으로 한다.
제1연동단과 제2연동단을 포함하여 이중화된 연동단과 장비간의 통신방법으로서,
상기 제1연동단과 장비간 TCP프로토콜을 이용한 제1통신연결 과정; 상기 제1연동단과 장비간 제1통신연결에 이상을 감지하는 제1통신연결 이상감지 과정;
상기 제1연동단에 제1통신연결 이상이 감지된 경우, 상기 제1통신연결에 사용한 가상 IP를 상기 제2연동단에 할당하여 제2연동단의 인터페이스를 활성화 하는 인터페이스 변환 과정; 상기 제2연동단으로 인터페이스가 활성화 된 경우, 상기 장비로부터 데이터를 수신 받는 주소를 제2연동단으로 수정하는 MAC주소 업데이트 과정; 상기 제2연동단의 MAC주소가 업데이트가 완료된 경우, 기존에 제1연동단과 장비간에 제1통신연결을 통하여 데이터를 송수신 하던 정상순서제어데이터를 획득하는 정상순서제어데이터 획득 과정; 상기 제2연동단이 정상순서데이터를 획득한 경우, 상기 정상순서데이터를 이용하여 기존의 제1연동단과 장비간 제1통신연결을 종료하는 제1통신연결 종료과정;및 상기 제1통신연결이 종료되면, 상기 제2연동단과 장비간 TCP프로토콜을 이용하여 통신연결을 하는 제2통신연결 과정;을 포함 한다.
또한, 상기 제1통신연결 이상감지 과정은, 상기 제1연동단과 장비간에 하트비트 데이터를 송수신하는 과정; 상기 제1연동단이, 설정된 시간 동안 상기 하트비트 데이터 수신 여부를 확인 하는 과정;및 상기 설정된 시간 동안 하트비트 데이터를 수신하지 못하는 경우, 제1통신연결에 이상이 감지된 것으로 판단하는 과정;을
포함 한다.
또한, 상기 인터페이스 변환 과정은, 상기 제1연동단이 제1통신연결 이상을 감지하는 경우, 제1연동단이 가상 IP사용을 중지하는 제1연동단 인터페이스 비활성 과정; 및 상기 제1연동단의 인터페이스가 비활성화 되는 경우, 상기 가상 IP를 제2연동단에 할당하여 제2연동단의 인터페이스가 활성화 시키는 제2연동단 인터페이스 활성 과정;을 포함한다.
또한, 상기 MAC주소 업데이트 과정은, 상기 제2연동단이 활성화 된 경우, 제2연동단은 제2연동단의 MAC주소와 상기 할당된 가상 IP를 이용하여 주소요청(ARP Request)패킷을 생성하는 과정; 상기 생성된 주소요청 패킷을 상기 장비에 송신하는 과정; 상기 주소요청 패킷을 수신한 장비는, 상기 수신한 주소요청 패킷에서 제2연동단의 MAC주소를 추출하여 미리 구비된 MAC주소테이블(ARP table)에 제2연동단의 MAC주소로 업데이트 하는 과정; 상기 업데이트된 제2연동단의 MAC주소를 이용하여, 상기 제2연동단으로 데이터를 송신하기 위한 주소응답(ARP Reply)패킷을 생성하는 과정;및 상기 생성된 주소응답 패킷을 상기 제2연동단 에 송신하는 과정;을 포함한다.
또한, 상기 정상순서제어데이터 획득 과정은, 상기 제2연동단이 임의순서제어데이터를 생성하는 임의순서제어데이터 생성과정; 상기 생성된 임의순서제어데이터와 데이터를 결합한 위장데이터 패킷을 생성하는 과정;
상기 생성된 위장데이터 패킷을 상기 장비로 송신하는 과정; 상기 위장데이터 패킷을 수신한 장비가, 정상순서제어데이터를 알리기 위하여 정상순서제어데이터에 데이터를 결합한 정상데이터(ACK)패킷을 생성하는 과정; 상기 생성한 정상데이터 패킷을 상기 제2연동단에 송신하는 과정;및 상기 제2연동단은 송신된 정상데이터 패킷을 이용하여 정상순서제어데이터를 획득하는 과정;을 포함한다.
또한, 상기 제1통신연결 종료과정은, 상기 제2연동단이, 기존의 제1통신연결을 종료하기 위하여 정상순서제어데이터에 종료데이터를 결합한 리셋(RST)패킷을 생성 하는 과정; 상기 생성된 리셋 패킷을 장비에 송신하는 과정;및 상기 장비가 리셋 패킷을 수신 받은 경우, 상기 장비가 제1연동단과의 제1통신연결을 종료하는 과정;을 포함한다.
또한, TCP 프로토콜을 사용하여 통신하는 장비와 통신연결 및 상기 통신연결 상태를 확인하는 연동 소프트웨어;및 상기 통신연결 상태를 확인하여, 상기 제1연동단과 장비와의 상기 통신연결에 이상이 감지된 경우, 제2연동단을 활성화 시켜 상기 장비와 통신연결 시키는 TCP이중화지원부;를 포함하고, 상기 연동소프트웨어는, 상기 장비와 통신연결 하는 통신 모듈;및 상기 장비와의 통신연결의 이상을 감지하는 연동단 상태관리모듈;을 포함하며, 상기 TCP이중화지원부는, 상기 제1연동단과 상기 장비간 통신연결에 이상이 발생한 경우에, 제2연동단을 활성화 시키는 인터페이스 변환부; 상기 장비와 주고받는 데이터인 패킷을 생성하는 패킷 생성부;및 상기 장비와 주고받은 데이터를 저장하기 위한 저장부;를 포함한다.
또한, 함정 체계에 탑재되어, TCP 프로토콜을 사용하여 통신하는 장비;
상기 장비와 통신하여, 감시 및 제어하는 감시/제어 시스템;및
상기 감시/제어 시스템으로 전송되는 TCP 프로토콜을 변환하는 청구항 9의 연동단 통신지원 시스템;을 포함한다.
TCP 이중화 지원 시스템의 인터페이스 변환부가 인터페이스의 활성화 및 비활성화를 담당함으로써 연동 SW(software)의 오류에도 대처가능하며 IP의 충돌 없이 연동을 이어갈 수 있다. 연동단 장애 즉시 TCP 이중화 지원 시스템의 송신부에서 주소요청(ARP Request)패킷 송신을 통해 장비의 MAC주소(ARP)테이블을 업데이트시켜 패킷의 이동경로를 수정하기 때문에 연동의 공백 또한 없앨 수 있다. 또한, 비정상 종료에 의해 TCP 세션이 여전히 살아있더라도 위장 데이터를 이용해 시퀀스 데이터(이하 정상순서제어데이터로 통칭함)를 획득하여 기존의 통신연결을 종료하고, 즉시 새로운 연동단이 장비와 통신연결을 맺을 수 있도록 지원한다.
연동단에 TCP 이중화 지원 시스템이 탑재되면, 연동단과 장비의 연동 소프트웨어(SW)를 수정하지 않고 연동단의 이중화가 가능하다는 장점이 있다. 이는 사업적인 비용을 절감시킬 수 있으며, 수정으로 인해 발생될 부수적인 시험 등을 생략할 수 있는 효과를 발생시킨다.
도 1은 본 발명의 일 실시 예에 따른 연동단, 장비, 감시/제어 시스템에 관한 블록도 이다.
도 2는 본 발명의 일 실시 예에 따른 이중화 된 연동단의 통신방법에 관한 순서도 이다.
도 3은 본 발명의 일 실시 예에 따른 제1통신연결 이상감지 과정에 관한 순서도 이다.
도 4는 본 발명의 일 실시 예에 따른 인터페이스 변환 과정에 관한 순서도 이다.
도 5는 본 발명의 일 실시 예에 따른 MAC 주소 업데이트 과정에 관한 순서도 이다.
도 6은 본 발명의 일 실시 예에 따른 정상순서제어데이터 획득 과정에 관한 순서도 이다.
도 7은 본 발명의 일 실시 예에 따른 제1통신연결종료 및 제2통신연결 과정에 관한 순서도 이다.
이하, 첨부된 도면을 참조하여 본 발명의 실시 예들을 상세히 설명 하기로 한다. 그러나 본 발명은 이하에서 개시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 발명의 실시 예들은 본 발명의 개시가 완전하도록 하며, 통산의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이다. 도면상에서 동일 부호는 동일한 요소를 지칭한다.
본 발명의 실시 예에 따른 연동단은 함정 전투 체계의 지휘 무장 통제 체계 내에서 탐지 센서나 무장 체계와의 연동을 담당하는 장비이다. 보다 구체적인 예로, 실시 예에 따른 본 발명은, 상기 연동단을 이중으로 구비하고, 상기 연동단 내에 TCP 이중화 지원시스템을 각각 구비하여, 일대일 TCP통신 기반 장비와 통신하는 하나의 연동단 사이의 통신연결에 문제가 발생하는 경우에, 다른 연동단에서 상기 장비와 통신연결을 하기 위한 장치이다.
이하, 도면을 참조하여 본 발명에 대하여 상세히 설명하도록 한다.
1. 연동 이중화 시스템.
도1을 참조하면, 본 발명에 따른 연동 이중화 시스템에 있어서, 함정 체계에 적용되어 장비와 TCP(Transmission Control Protocol)를 통하여 통신연결(이하 TCP통신연결이라 통칭함) 하는 연동단(100, 200), 함정 체계에 탑재되어 상기 연동단(100, 200)과 직접 통신 하는 장비(300), 상기 장비(300)와 상기 연동단(100, 200)을 통하여 통신하고, 상기 장비를 감시 및 제어 하는 감시/제어시스템(400)으로 구성된다.
1) 연동단(제1연동단 : 100, 제2연동단 : 200)
상기 장비(300)와 감시/제어 시스템(400)이 상호 통신하기 위하여, 통신 프로토콜을 중간에서 변환시켜주는 일종의 번역기 역할을 하는 연동단이 필요하다. 이는 함정 체계에 탑재되는 모든 장비(300)가 동일한 통신 프로토콜을 사용할 수는 없기 때문이다. 상기 장비(300)의 통신 모듈은 개발 및 생산 과정에서 미리 개발되고 생산 되기 때문에 추후에 통신 모듈의 수정이 불가능 하여 상기 통신 프로토콜을 변환하는 연동단이 필요하다.
또한, 함정 체계의 생존성을 위하여 연동단을 이중으로 구성한다. 이는 상기 연동단을 하나로 구성될 경우에는, 상기 연동단에 문제가 발생하는 경우, 상기 장비(300)를 감시 및 제어 할 수 없기 때문이다. 따라서, 본 발명은 감시/제어 시스템(400)과와 장비간 통신의 연속성을 위해 ACTIVE-STANDBY 방식으로 동일한 기능을 하는 연동단을 추가하여 ACTIVE 모드의 연동단(예를 들면 제1연동단)에 장애가 발생하는 경우에 다른 STANDBY 모드의 연동단(예를 들면 제2연동단)이 ACTIVE 모드가 되면서 상기 제1연동단의 기능을 대신 운영하게 된다. 다만, 상기 ACTIVE 모드와 STANDBY 모드는 이에 한정되는 것은 아니고, 그 역으로 또한 마찬가지로 적용된다. 예를 들어 상기 제2연동단이 STANDBY 모드로 되면 상기 제1연동단이 ACTIVE 모드로 변환 될 수도 있다.
이하에서는 본 발명의 실시에 따른 일 예로, 제1연동단(100)과 장비(300)간에 통신연결에 이상이 발생한 경우에, 제2연동단(200)이 통신연결을 하도록 하는 연동단의 통신방법에 대하여 설명한다.
또한, 상기 제1연동단(100) 및 제2연동단(200)은 동일한 기능을 수행하므로 이하에서 중복되는 설명은 생략하도록 한다.
본 발명의 실시 예에 따른 연동단은 제1연동단(100), 및 제2연동단(200)을 이중으로 구비하여 구성된다.
도 1을 참조하면, 연동단(100, 200)은 상기 장비(300)와 통신연결을 수행하고, 상기 통신연결에 이상이 발생하는지를 감지하기 위한 연동 소프트웨어(120, 220) 및, 상기 통신 연결에 이상이 감지되는 경우 다른 연동단으로 통신연결하기 위한 TCP 이중화 지원시스템(140, 240)을 포함한다.
(1) 연동단의 연동 소프트웨어(120, 220)
연동단의 연동 소프트웨어(120, 220)는, 일대일 TCP 통신기반을 사용하는 장비(300)와 통신연결을 하기 위한 통신 모듈(122) 및 상기 장비(300)와 통신연결에 이상이 발생하는 경우, 이를 감지하는 연동단 상태 관리모듈(124)로 구성된다.
① 통신 모듈(122, 222)
연동단의 연동 소프트웨어(120, 220)는, 일대일 TCP 통신기반을 사용하는 장비(300)와 통신연결을 하기 위한 통신 모듈(122) 및 상기 장비(300)와 통신연결에 이상이 발생하는 경우, 이를 감지하는 연동단 상태 관리모듈(124)로 구성된다.
② 연동단 상태 관리모듈(124, 224)
연동단 상태 관리모듈(124, 224)은, 상기 연동단(100, 200)과 장비(300)간에 TCP통신연결이 되면, 상기 TCP통신연결이 지속되는 동안 하트비트 메시지(Heartbeat Massage)를 송수신하게 되는데, 상기 송수신 결과에 따라 TCP통신연결에 이상이 발생했는지를 감지한다. 예를 들면, 주기적으로 상기 하트비트 메시지의 수신 여부를 조회하고, 상기 조회 결과 설정시간(T) 동안 하트비트 메시지가 하나 이상 수신되지 않는 경우, 상기 TCP통신연결에 이상이 발생한 것으로 감지하여, 하나의 연동단(예를 들면 제1연동단, 100)을 비활성화(STANDBY모드)시키고, 다른 연동단(예를 들면 제2연동단, 200)을 활성화(ACTIVE모드)시킨다.
여기에서 상기 설정시간(T)은 상기 연동단 상태 관리모듈(124, 224)에 미리 설정된 임의의 시간으로, 상기 TCP통신연결이 지속되는 시간보다 짧은 시간일 수 있다.
(2) TCP 이중화 지원시스템(140, 240)
TCP 이중화 지원 시스템(140)은, 상기 연동단(예를 들면 제1연동단, 100)과 장비(300)간 TCP 통신연결에 이상이 발생하는 경우, 다른 연동단(예를 들면 제2연동단, 200)이 TCP 통신연결을 할 수 있도록 한다.
일 실시 예에 따른 본 발명은, TCP 이중화 지원시스템(140, 240)을 추가로 구비한다. 연동 소프트웨어를 통하여 이중화 된 연동단과 장비의 통신연결을 수행할 수 있지만, 이러한 경우에 상기 소프트웨어에 오류가 발생하여 하나의 연동단(예를 들면 제1연동단, 100)이 비활성화 되지 않는 경우에, 다른 연동단(예를 들면 제2연동단, 200)이 정상적으로 작동을 할 수가 없기 때문이다.
따라서, 본 발명은 TCP 이중화 지원시스템을 추가로 구비하여 상기 하나의 연동단(예를 들면 제1연동단, 100)과 장비간의 통신연결에 문제가 발생한 경우에, 다른 연동단(예를 들면 제2연동단, 200)이 즉각적으로 통신연결 할 수 있도록 지원한다.
도1을 참조하면, 상기 TCP 이중화 지원 시스템(140, 240)은, 상기 장비(300)와 주고 받는 데이터인 패킷을 생성하는 패킷 생성부(142, 242), 상기 연동단(제1연동단, 100)과 장비간에 TCP 통신연결에 이상이 발생하는 경우에, 다른 연동단(제2연동단, 200)의 인터페이스를 활성화 시키는 인터페이스 변환부(144, 244), 상기 패킷 생성부에 생성된 패킷 이나, 상기 장비(300)로부터 수신 받은 패킷 등을 저장하여 사용하는 저장부(146, 246)로 구성된다.
① 패킷 생성부(142, 242)
패킷 생성부(142, 242)는 상기 장비(300)와 TCP 통신연결을 통하여 주고 받는 데이터를 생성한다. 여기에서 패킷은 데이터(예를 들면, 특정 정보나 명령어 등)를 일정 크기로 자른 것을 말하며, 상기 패킷에는 TCP 통신에 사용하는 IP, 송수신 MAC(Media access control address)주소, 및 명령어 등을 포함 할 수 있다.
② 인터페이스 변환부(144, 244)
인터페이스 변환부(144, 244)는 상기 제1연동단(100)과 장비간에 TCP 통신연결에 이상이 발생하는 경우, 상기 제1연동단(100)의 인터페이스를 비활성화 시키고, 상기 제2연동단(200)의 인터페이스를 활성화 시킨다. 상기 TCP 통신연결은 하나의 IP만으로 통신을 하기 때문에, 상기 하나의 IP를 제1연동단(100) 및 제2연동단(200)이 이 동시에 사용하는 경우에는 상기 IP의 충돌을 일으킬 수 있다.
따라서, 상기 인터페이스 변환부(144, 244)는 상기 TCP 통신연결에 이상이 발생하는 경우에는 제1연동단(100)의 IP를 삭제하여 인터페이스를 비활성 시키고, 상기 IP를 제2연동단(200)에 할당하여 인터페이스를 활성화 시킨다.
③ 저장부(146, 246)
저장부(146, 246)는 상기 패킷 생성부(142, 242)에서 생성된 패킷 이나, 후술하는 장비(300)로부터 수신 받은 패킷을 저장하는 기능을 수행한다.
상기 저장부(146, 246)는 내부 메모리 일 수 도 있고, 외부 메모리 일 수도 있다. 다만, 이에 한정되지 않는다.
2) 장비(300)
장비(300)는 일대일 TCP 통신 기반을 사용하는 장치로, 상기 연동단(100, 200)과 TCP 통신연결을 수행한다. 도 1을 참조하면, 상기 장비(300)는 상기 연동단(100, 200) 과 TCP통신연결을 수행하고, 상기 TCP통신연결을 통하여 송수신 하는 패킷을 생성하고, 상기 상기 송수신한 패킷 등을 저장하는 연동 소프트웨어(SW, 320) 및 MAC 주소를 저장 및 수정하여 TCP 통신에 사용되는 ARP 테이블(340)으로 구성된다.
또한, 상기 장비(300)는 운영체제(미도시)로 관리하는데, 상기 운영체제는 Windows 나 리눅스 같은 시스템 일 수도 있다. 또한, 상기 운영체제는 ARP 테이블(340)을 관리한다. 이는 후술 하기로 한다.
(1) 장비의 연동 소프트웨어(320)
장비의 연동 소프트웨어(320)는, 일대일 TCP 프로토콜을 사용하여 상기 연동단(100, 200)과 TCP통신연결을 수행하는 통신모듈(322), 및 상기 연동단(100, 200)과 TCP통신연결을 통하여 송수신하는 데이터인 패킷을 생성하고, 상기 패킷을 저장하여 관리하는 연동모듈(324)로 구성된다.
① 통신모듈(322)
상기 장비(300)의 통신모듈(322)은, TCP 프로토콜을 사용하여 상기 연동단(100, 200)과 TCP통신연결을 수행한다.
② 연동모듈(324)
연동모듈(324)은 도1에 도시한 바와 같이, 상기 연동단(100, 200)과 장비(300)간에 TCP통신연결을 통하여 송신 하는 데이터인 패킷을 생성하는 패킷생성모듈(325) 및 상기 송신한 패킷과 상기 연동단(100, 200)으로부터 수신한 패킷을 저장하여 관리하는 저장모듈(326)을 포함한다.
상기 패킷 생성모듈(324a)은 연동단(100, 200)과 TCP통신연결을 통하여 필요한 데이터 등 송수신 하는 패킷을 생성하고, 상기 장비(300)의 통신모듈(322)을 통하여 상기 연동단(100, 200)으로 송신하게 된다.
상기 저장모듈(324b)는, 상기 패킷 생성모듈(324a)에서 생성된 패킷 이나, 상기 연동단(100, 200)으로부터 수신한 패킷을 저장하거나, 상기 저장된 패킷을 수정하여 관리 하는 기능을 수행한다.
(2) ARP 테이블
상기 장비(300)는 TCP통신연결에 사용되는 상기 연동단(100, 200) 및 장비(300)의 MAC주소를 저장 및 수정하여 관리하는 MAC주소(ARP) 테이블(340)을 포함하고 있다.
상기 ARP 테이블(340)은, IP-MAC주소의 쌍이 저장된 테이블을 말한다. 상기 연동단(100, 200)과 장비(300)간에 TCP 통신연결을 통하여 통신 하는 경우, 상기 TCP통신연결 및 상기 TCP통신연결 이후에 테이터를 송수한 하기 위하여 IP주소와 MAC주소가 필요한데, 상기 IP주소와 MAC주소를 저장하고, 상기 IP주소와 MAC주소가 변경된 경우에는 이를 수정하여 관리 할 수 있다. 이는 장비(300)의 운영체제에서 관리 하는데, 상기 연동단(100, 200)으로부터 ARP Request를 수신하게 되면 이를 통하여 자동으로 상기 ARP 테이블(340)의 연동단의 MAC주소를 업데이트 하게 된다.
이하 MAC주소 업데이트 방법(ARP테이블 업데이트)에 대하여는 후술 하기로 한다.
3) 감시/제어 시스템(400)
감시/제어 시스템(400)은 함정 체계에 탑재되어 상기 장비(300)를 감시 또는 제어하는 기능을 수행한다. 상기 장비(300)는 개발과정에서 통신 모듈이 개별적으로 개발되어 생산되기 때문에, 상기 장비(300)의 통신 모듈의 수정은 제한된다. 따라서 이러한 장비(300)와 통신을 수행하기 위해서 통신 프로토콜을 중간에 변환시켜주는 일종의 번역기 역할의 연동단이 필요하다.
따라서, 감시/제어 시스템(400)은 상기 연동단을 통하여 함정체계에 탑재되는 장비와 통신을 하게 된다.
2. 연동단의 이중화 방법
도 2은 본 발명의 실시 예에 따른 일대일 TCP(Transmission Control protocol) 통신 기반 장비와 TCP 프로토콜을 이용하여 통신하는 연동단의 이중화 방법을 개략적으로 나타내는 도면이다.
도 2을 참조하면, 연동단의 이중화 방법은, 제1연동단(100)과 장비간 TCP 통신연결 하는 제1통신연결 과정(S100, S300), 상기 TCP 통신연결의 이상을 감지하는 제1통신연결 이상감지 과정(S102), 상기 제1통신연결에 이상이 발생하여 감지하는 경우, 상기 제1연동단(100)에서 상기 제2연동단(200)으로 인터페이스를 변환시키는 인터페이스 변환 과정(S102, S200), 상기 인터페이스가 상기 제2연동단(200)으로 변환되는 경우, 상기 제2연동단(200)은 상기 장비(300)로부터 데이터를 전송 받기 위해 장비의 APR 테이블에 저장된 MAC주소를 제2연동단의 MAC주소로 변환시키는 MAC주소 업데이트 과정(S202, S302), 상기 MAC주소 업데이트 과정(S202, S302)에서 상기 제2연동단(200)의 MAC주소로 업데이트가 된 경우, 기존의 제1통신연결(S100, S300)을 통하여 TCP통신연결 된 상기 제1연동단(100)과 장비(300)간에 주고 받은 정상순서제어데이터를 획득하기 위한 정상순서제어데이터 획득 과정(S204, S304), 상기 획득한 정상순서제어데이터를 이용하여 기존의 제1연동단(100)과 장비(300)간 연결된 제1통신연결(S100, S300)을 종료 시키는 제1통신연결 종료 과정(S106, S206, S306), 상기 제1통신연결이 종료 된 경우, 상기 제2연동단(200)과 상기 장비(300)가 새로운 TCP 통신연결 하는 제2통신연결 과정(S208, S308)을 포함한다.
1) 제1 통신연결 과정(S100, S300)
제1 통신연결 과정(S100, S300)은, 일대일 TCP 통신 기반을 구비한 장비(300)와 제1연동단(100)이 TCP프로토콜을 이용하여 통신연결 한다.
상기 제1통신연결 과정(S100, S300)은 상기 제1연동단(100)의 통신 모듈(122) 및 상기 장비(300)의 통신 모듈(322)에 상호간에 의하여 수행될 수 있다.
2) 제1 통신연결 이상감지 과정(S102)
제1통신연결 이상감지 과정(S102)은, 상기 제1연동단(100)과 장비(300)와의 TCP 통신연결에 이상이 발생하는 경우에 이를 감지하는 과정이다.
도3을 참조하여 보면, 상기 제1통신연결 이상감지 과정(S102)은, 상기 제1연동단(100)과 장비(300)간에 하트비트 데이터를 송수신 하는 과정(S102a), 상기 제1연동단(100)에 설정된 시간(T)동안 하드비트 데이터가 수신되는지 확인하는 하트비트 데이터 수신 확인 과정(S102b), 상기 설정된 시간(T)동안 하트비트 데이터를 수신하지 못하는 경우에 TCP 통신연결에 이상을 감지하여, 상기 제1연동단(100)을 STANDBY 모드 변환하는 과정(S102c)을 포함한다.
반면에, 상기 하트비트 데이터 수신 확인 과정(S102b)에서 상기 설정된 시간(T)동안 하트비트 데이터를 수신하는 경우에는 상기 TCP 통신연결을 정상으로 판단하고, 상기 제1연동단(100)은 장비(300)와 제1통신연결을 유지하여 지속적으로 하트비트 데이터를 송수신하는 ACTIVE 모드로 유지하는 과정(S102d)을 포함한다.
상기 제1통신연결 과정(S100, S300)을 통하여 상호 TCP통신연결 된 제1연동단(100)과 장비(300)는, 상기 제1통신연결(S100, S300)이 종료될 때까지 하트비트 메시지를 송수신한다(S102a).
상기 제1통신연결(S100, S300)은, 상기 제1연동단(100)에서 장비(300)로 TCP 통신연결 종료 신호를 송신할 때까지 지속된다. 따라서, 상기 제1연동단(100)과 장비(300)간에 TCP 통신연결에 이상이 발생하는 경우, 예를 들어 랜선 단절 등, 상기 제1연동단(100)이 상기 장비(300) TCP 통신연결 종료신호를 송신할 수 없다.
따라서, 상기 제2연동단(200)이 제1연동단(100)을 대신하여 기존의 제1통신연결(S100, S300)을 종료 하여야 한다.
상기 TCP 통신연결의 문제를 감지하기 위하여 제1연동단(100)은 상기 제1통신연결(S100, S300)이 지속되는 동안 상기 장비(300)로부터 하트비트 메시지가 수신되는지 확인한다(S102b).
도3을 참조하면, 상기 제1연동단이 설정된 시간(T)동안에 하트비트 메시지를 수신하지 못하는 경우에는, TCP 통신연결에 이상을 감지하여, 제1연동단(100)은 STANDBY 모드로 변환(S102c)하고 인터페이스 변환 과정(S104)으로 넘어가 제1연동단(100)은 비활성화 되고, 상기 제2연동단(200)의 인터페이스를 활성화 시킨다.
3) 인터페이스 변환 과정(S104, S200)
인터페이스 변환 과정(S104, S200)은, 상기 제1연동단(100)과 장비(300)간 TCP 통신연결에 이상이 감지된 경우, 제1연동단(100)의 가상 IP를 삭제하고, 상기 가상 IP를 제2연동단에 할당하는 과정이다. 이하 도4을 참조하여 자세하게 살펴 본다.
상기 TCP 통신연결 이상 감지 과정(S102)에서 이상이 발생한 경우에, 제1연동단은 자신이 사용하던 가상IP를 삭제하는 인터페이스 비활성 과정(S104a), 상기 가상IP를 제2연동단에 할당하는 과정(S104b), 상기 가상 IP를 제2연동단(200)에 할당하여 제2연동단(200)의 인터페이스를 활성화 하는 과정(S200a)를 포함한다.
상기 제1연동단의 인터페이스 비활성(S104a) 과정은, 기존에 제1연동단과 장비간에 TCP 통신연결을 통하여 데이터를 주고 받을 때 사용하던 가상 IP를 삭제한다. 이는 상기 TCP 통신연결에 사용하는 가상 IP가 2개이상 존재하는 경우에, 상기 가상 IP간에 충돌이 발생한다. 따라서, 제1연동단(100)이 기존에 사용하던 가상 IP를 삭제 하여 인터페이스를 비활성화 하지 않으면, 이후에 제2연동단(200)으로 가상 IP가 할당되어 제2연동단(200)도 가상 IP사용하는 경우에는 상기 제1연동단(100)이 사용하던 가상IP와 같아서 충돌이 발생할 수도 있다.
상기 제1연동단(100)은, 상기 가상 IP를 삭제하여 인터페이스를 비활성화 하는 경우(S104a), 상기 가상 IP를 제2연동단(200)에 할당(S104b)한다. 서술한 것처럼 기존에 제1연동단(100)과 장비(200)간에 제1통신연결(S100, S300)이 끊어지지 않은 상태이기 때문에, 제1연동단(100)의 역할을 제2연동단(200)이 대신하기 위함이다. 상기 제2연동단(200)은 상기 가상 IP를 할당 받아 인터페이스를 활성화(S200a)하여 상기 제1통신연결에서 제1연동단(100)이 수행한 기능을 대신 수행한다. 이는 후술하기로 한다.
상기 인터페이스 변환과정은 상기 연동단(100, 200)의 인터페이스 변환부(144, 244)에 수행한다.
4) MAC주소 업데이트 과정(S202, S302)
상기 제2연동단(200)은, 상기 가상 IP를 할당 받아 인터페이스를 활성화 한 경우, 장비(200에 저장된 MAC주소를 제2연동단의 MAC주소로 바꾸기 위하여 MAC주소 업데이트 과정(S202, S302)을 수행 한다.
도5을 참조하여 보면, 기존에 제1연동단(100)과 장비(300)간에 제1통신연결(S100, S300)을 통하여, 데이터를 주고 받던 MAC 주소는 제1연동단(100)의 MAC주소 이기 때문에 제2연동단(200)이 상기 가상 IP를 할당 받아 인터페이스를 활성화 시켜도 상기 장비(300)로부터 데이터를 전달받을 수 없다.
따라서 장비(300)에 저장된 MAC 주소를 제2연동단(200)의 MAC주소로 변환하는 과정이 필요하다.
상기 MAC주소 업데이트 과정(S202, S302)은 ARP(Address Resolution Protocol)를 통해 이루어 진다. 예를 들어, 장비(300)가 제2연동단(200)의 MAC주소를 얻으려면, 상기 제2연동단(200)단으로부터 주소요청(ARP Request)패킷을 수신하여 MAC주소를 얻게 된다.
따라서, 제2연동단(200)은 주소요청(ARP Request)패킷 생성과정(S202a)을 통하여 주소요청(ARP Request)패킷(IP: 가상IP, MAC: 제2연동단)을 생성하고, 상기 통신모듈(222)을 통하여 상기 주소요청(ARP Request)패킷을 상기 장비(300)로 송신(S202b)한다. 상기 제2연동단(200)으로부터 주소요청(ARP Request)패킷을 수신한 장비(300)는 MAC주소(ARP)테이블 업데이트 과정(S302a)을 통하여, 상기 MAC주소(ARP)테이블에 저장된 제1연동단(100)의 MAC주소를 제2연동단(200)의 MAC주소로 바꾸어 저장한다. 상기 MAC주소가 제2연동단(200)의 MAC 주소로 변경된 경우, 이에 대한 응답으로 주소응답(ARP Reply)패킷(IP: 가상 IP, MAC: 제2연동단)을 제2연동단(200)에 송신(S302b)한다.
이로서 상기 제2연동단(200)은 상기 장비(300)와 데이터를 송수신 할 수 있다.
5) 정상순서제어데이터 획득 과정(S204, S304)
정상순서제어데이터 획득 과정(S204, S304)는, 상기 장비(300)의 MAC주소(ARP)테이블의 MAC주소가 제2연동단(200)의 MAC주소로 업데이트 되어, 상기 제2연동단(200)이 주소응답(ARP Reply)패킷을 수신하는 경우에, 기존 제1통신연결(S100, S300)을 통하여 상기 제1연동단(100)과 장비(300)간에 데이터를 송수신 하는 경우에, 상기 데이터에 결합하여 상기 송수신하는 데이터가 정상적인 데이터임을 알리기 위하여 사용하는 정상순서제어데이터를 획득 하는 과정이다.
상기 정상순서제어데이터는, 명령어 등을 결합하여 상기 장비(300)를 제어하는데 사용할 수도 있다. 또한, 상기 정상순서제어데이터는 임의의 숫자를 순서대로 조합한 데이터 일 수도 있다. 상기 정상순서제어데이터가 다르게 되면, 상기 장비(300)가 명령어 등을 수신 하여도, 상기 장비(300)를 제어할 수가 없다. 따라서, 상술한 바와 같이 기존의 제1연동단(100)과 장비(300)의 제1통신연결(S100, S300)은 유지 되고 있는 상태이기 때문에, 새로 활성화 된 제2연동단(200)은 상기 정상순서제어데이터를 이용하여 상기 장비(300)에 기존의 제1통신연결을 종료하는 명령을 하기 위하여 상기 정상순서제어데이터를 획득 하는 과정이 필요하다.
상기 정상순서제어데이터를 획득하기 위하여, 상기 제2연동단(200)은
위장데이터 패킷 생성 과정(S204a)을 통하여 위장데이터 패킷을 생성하게 된다.
상기 위장 데이터 패킷은, 임의순서제어데이터에 일반 데이터를 결합한 패킷을 말한다. 상기 임의순서제어데이터는 임의의 숫자를 임의대로 조합한 데이터 일 수도 있다. 또한, 상기 위장 데이터 패킷은 상기 활성화된 제2연동단(200)이 제1연동단(100)이 송신하는 것과 같은 일반적인 데이터 패킷을 말한다. 이는 상기 제1통신연결(S100, S300)은 유지 되고 있는 상태이기 때문이다. 따라서, 상기 제2연동단(200)은 상기 임의순서제어데이터에 명령어를 결합하여 위장데이터 패킷을 생성하여 상기 장비(300)로 송신(S204b)하게 된다.
상기 장비(300)는 위장데이터 패킷을 수신하게 되면, 상기 정상순서제어데이터와 비교 과정(S304a)을 수행한다. 상기 정상순서제어데이터와 비교하여 값이 다른 경우에는, 정상순서제어데이터에 데이터를 결합한 ACK(Acknowledge) 패킷을 생성(S304b)한다. 상기 ACK패킷은 정상순서제어데이터에 일반 데이터를 결합한 패킷으로 상기 제2연동단(200)이 상기 ACK패킷을 이용하여 정상순서제어데이터를 획득한다. 또한, 임의순서제어데이터가 상기 정상순서제어데이터와 다른 경우에는, 상기 장비(300)가 상기 연동단(100, 200)으로부터 받는 명령 등을 수행 할 수 없기 때문에, 상기 정상순서제어데이터를 알리기 위함이다.
상기 생성한 ACK 패킷은 상기 장비의 통신모듈(322)을 통하여, 상기 제2연동단(200)에 송신(S304c)하게된다.
상기 제2연동단(200)은 수신한 상기 ACK 패킷을 이용하여 정상순서제어데이터를 획득(S204c) 하게 된다.
반면에, 상기 정상순서제어데이터와 비교 과정(S304a)에서 임의순서제어데이터가 정상순서제어데이터와 일치하게 되면 상기 장비(300)는 정상데이터 패킷을 생성하여 제2연동단으로 송신(S304d)하게 된다. 이때는 정상순서제어데이터를 획득하기 위한 ACK 패킷을 생성하는 과정이 필요 없을 수도 있다.
6) 제1통신연결 종료 과정(S106, S206, S306)
제1통인연결 종료 과정(S106, S206, S306)은 기존에 제1연동단(100)과 장비(300)간에 연결된 제1통신연결을 종료 하는 과정이다. TCP 통신연결은, 통신연결의 종료 신호를 받을 때까지 지속 되기 때문이다. 따라서, 기존에 제1연동단(100)과 장비(300)간에 연결된 제1통신연결(S100, S300)을 종료시키는 과정이 있어야, 새로 활성화 된 제2연동단(200)과 장비(300)간에 새로운 TCP통신연결이 가능하고, 상기 제2연동단(200)이 상기 장비(300)와 통신연결을 통하여 데이터를 송수신 할 수 있다.
이하 도7을 참조하여 보면, 상기 제2연동단(200)은 정상순서제어데이터 획득 과정(S204)을 통하여 획득한 정상순서제어데이터에 통신연결 종료 명령데이터를 결합하여 리셋(RST: Reset)패킷을 생성(S206a)한다. 상기 생성된 리셋 패킷을 상기 장비(300)로 송신(S206b)하게 되면, 기존에 제1연동단(100)과 장비(300) 사이에 연결된 제1통신연결이 종료(S106a, S306a)한다. 이로서 기존에 연결된 제1통신연결(S100, S300)은 종료하게 되는 것이다.
7) 제2 통신연결 과정(S208, S308)
상기 제2연동단(200)은 상기 제1통신연결 종료과정(S106, S206, S306)에서 제1통신연결이 종료하게 되면, 상기 장비(300)와 TCP 통신연결 하기 위한 제2통신연결 패킷을 생성(S208a)하게 된다.
상기 생성된 제2통신연결 패킷을 장비로 송신(S208b)하게 되면 이로서 제2연동단(200)과 장비(300)간에 새로운 TCP 통신연결인 제2통신연결(S208, S308)이 이루어 지게 된다.
따라서, 상기 제2통신연결(S208, S308)이 연결된 이후에는 상기 제2연동단(200)과 장비(300)에 TCP프로토콜을 이용한 통신연결을 통하여 데이터를 송수신 할 수 있다.
100: 제1연동단
200: 제2연동단
300: 장비
400: 감시/제어 시스템
120, 220: 연동단 연동 소프트웨어
140, 240: TCP 이중화 지원부
122, 222: 통신모듈
124, 224: 연동단 상태 관리모듈
142, 242: 패킷 생성부
144, 244: 인터페이스 변환부
146, 246: 저장부
322: 장비 통신모듈
324: 연동모듈
324a: 패킷 생성모듈
324b: 저장 모듈
320: 장비 연동 소프트웨어
340 : ARP 테이블

Claims (8)

  1. 제1연동단과 제2연동단을 포함하여 이중화된 연동단과 장비간의 통신방법으로서,
    상기 제1연동단과 장비간 TCP프로토콜을 이용한 제1통신연결 과정;
    상기 제1연동단과 장비간 제1통신연결에 이상을 감지하는 제1통신연결 이상감지 과정;
    상기 제1연동단에 제1통신연결 이상이 감지된 경우, 상기 제1통신연결에 사용한 가상 IP를 상기 제2연동단에 할당하여 제2연동단의 인터페이스를 활성화 하는 인터페이스 변환 과정;
    상기 제2연동단으로 인터페이스가 활성화 된 경우, 상기 장비로부터 데이터를 수신 받는 주소를 제2연동단으로 수정하는 MAC주소 업데이트 과정;
    상기 제2연동단의 MAC주소가 업데이트가 완료된 경우, 기존에 제1연동단과 장비간에 제1통신연결을 통하여 데이터를 송수신 하던 정상순서제어데이터를 획득하는 정상순서제어데이터 획득 과정;
    상기 제2연동단이 정상순서데이터를 획득한 경우, 상기 정상순서데이터를 이용하여 기존의 제1연동단과 장비간 제1통신연결을 종료하는 제1통신연결 종료과정;및
    상기 제1통신연결이 종료되면, 상기 제2연동단과 장비간 TCP프로토콜을 이용하여 통신연결을 하는 제2통신연결 과정;을 포함하고,
    상기 정상순서제어데이터 획득 과정은,
    상기 제2연동단이 임의의 숫자를 임의대로 조합한 임의순서제어데이터를 생성하는 임의순서제어데이터 생성과정;
    상기 생성된 임의순서제어데이터와 데이터를 결합한 위장데이터 패킷을 생성하는 과정;
    상기 생성된 위장데이터 패킷을 상기 장비로 송신하는 과정;
    상기 위장데이터 패킷을 수신한 장비가, 정상순서제어데이터를 알리기 위하여 임의의 숫자를 순서대로 조합한 정상순서제어데이터에 데이터를 결합한 정상데이터(ACK)패킷을 생성하는 과정;
    상기 생성한 정상데이터 패킷을 상기 제2연동단에 송신하는 과정; 및
    상기 제2연동단은 송신된 정상데이터 패킷을 이용하여 정상순서제어데이터를 획득하는 과정;을 포함하는 연동단의 통신방법.
  2. 청구항 1에 있어서,
    상기 제1통신연결 이상감지 과정은,
    상기 제1연동단과 장비간에 하트비트 데이터를 송수신하는 과정;
    상기 제1연동단이, 설정된 시간 동안 상기 하트비트 데이터 수신 여부를 확인 하는 과정;및
    상기 설정된 시간 동안 하트비트 데이터를 수신하지 못하는 경우, 제1통신연결에 이상이 감지된 것으로 판단하는 과정;을
    포함 하는 연동단의 통신방법.
  3. 청구항 1에 있어서,
    상기 인터페이스 변환 과정은,
    상기 제1연동단이 제1통신연결 이상을 감지하는 경우, 제1연동단이 가상 IP사용을 중지하는 제1연동단 인터페이스 비활성 과정; 및
    상기 제1연동단의 인터페이스가 비활성화 되는 경우, 상기 가상 IP를 제2연동단에 할당하여 제2연동단의 인터페이스가 활성화 시키는 제2연동단 인터페이스 활성 과정;을
    포함하는 연동단의 통신방법.
  4. 청구항 1에 있어서,
    상기 MAC주소 업데이트 과정은,
    상기 제2연동단이 활성화 된 경우, 제2연동단은 제2연동단의 MAC주소와 상기 할당된 가상 IP를 이용하여 주소요청(ARP Request)패킷을 생성하는 과정;
    상기 생성된 주소요청 패킷을 상기 장비에 송신하는 과정;
    상기 주소요청 패킷을 수신한 장비는, 상기 수신한 주소요청 패킷에서 제2연동단의 MAC주소를 추출하여 미리 구비된 MAC주소테이블(ARP table)에 제2연동단의 MAC주소로 업데이트 하는 과정;
    상기 업데이트된 제2연동단의 MAC주소를 이용하여, 상기 제2연동단으로 데이터를 송신하기 위한 주소응답(ARP Reply)패킷을 생성하는 과정;및
    상기 생성된 주소응답 패킷을 상기 제2연동단 에 송신하는 과정;을
    포함하는 연동단의 통신방법.
  5. 삭제
  6. 청구항 1에 있어서,
    상기 제1통신연결 종료과정은,
    상기 제2연동단이, 기존의 제1통신연결을 종료하기 위하여 정상순서제어데이터에 종료데이터를 결합한 리셋(RST)패킷을 생성 하는 과정;
    상기 생성된 리셋 패킷을 장비에 송신하는 과정;및
    상기 장비가 리셋 패킷을 수신 받은 경우, 상기 장비가 제1연동단과의 제1통신연결을 종료하는 과정;을
    포함하는 연동단의 통신방법.
  7. 삭제
  8. 삭제
KR1020190120679A 2019-09-30 2019-09-30 일대일 tcp 통신 기반 장비의 연동 이중화 방법 KR102122959B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190120679A KR102122959B1 (ko) 2019-09-30 2019-09-30 일대일 tcp 통신 기반 장비의 연동 이중화 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190120679A KR102122959B1 (ko) 2019-09-30 2019-09-30 일대일 tcp 통신 기반 장비의 연동 이중화 방법

Publications (1)

Publication Number Publication Date
KR102122959B1 true KR102122959B1 (ko) 2020-06-15

Family

ID=71081853

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190120679A KR102122959B1 (ko) 2019-09-30 2019-09-30 일대일 tcp 통신 기반 장비의 연동 이중화 방법

Country Status (1)

Country Link
KR (1) KR102122959B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000312244A (ja) * 1999-04-27 2000-11-07 Nippon Telegr & Teleph Corp <Ntt> ネットワークインタフェース切替方法およびその装置、その記録媒体
JP2003348093A (ja) * 2002-05-27 2003-12-05 Nec Corp 通信処理装置およびネットワークインタフェース切り替え方法
KR101969304B1 (ko) * 2017-10-26 2019-08-20 아토리서치(주) 패킷-아웃 메시지를 이용한 소프트웨어 정의 네트워킹 환경에서의 장애 처리 방법 및 컴퓨터 프로그램

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000312244A (ja) * 1999-04-27 2000-11-07 Nippon Telegr & Teleph Corp <Ntt> ネットワークインタフェース切替方法およびその装置、その記録媒体
JP2003348093A (ja) * 2002-05-27 2003-12-05 Nec Corp 通信処理装置およびネットワークインタフェース切り替え方法
KR101969304B1 (ko) * 2017-10-26 2019-08-20 아토리서치(주) 패킷-아웃 메시지를 이용한 소프트웨어 정의 네트워킹 환경에서의 장애 처리 방법 및 컴퓨터 프로그램

Similar Documents

Publication Publication Date Title
CN105607590B (zh) 用于在过程控制系统中提供冗余性的方法和装置
EP1892929B1 (en) A method, an apparatus and a system for message transmission
US9032240B2 (en) Method and system for providing high availability SCTP applications
EP1675356B1 (en) Notification of failures in a trunk network
CN101175000A (zh) 一种自动检测ip地址的方法及装置
JPH11205356A (ja) 通信制御システム
CN102209064B (zh) 使用vrrp为接入设备提供备份的方法和vrrp网关设备
JP4560506B2 (ja) コールサーバの障害に対して保護を与えるクラスタ形成コールサーバ
JP2010103695A (ja) クラスタシステム、クラスタサーバ及びクラスタ制御方法
EP2317699A1 (en) A method for implementing a heartbeat mechanism in a communication network and the apparatus thereof
CN111786819B (zh) 一种具有双网口冗余功能的串口服务器
CN108270593B (zh) 一种双机热备份方法和系统
KR102122959B1 (ko) 일대일 tcp 통신 기반 장비의 연동 이중화 방법
JP2003520477A (ja) インテリジェントネットワークにおける信頼性の高い通信を実行する方法およびその装置
JP4796883B2 (ja) Nat管理システム
JP2023543323A (ja) スマートカード管理装置の分散式管理システム及び管理方法
JP2012075009A (ja) 冗長化装置及び冗長化プログラム
CN113852514A (zh) 服务不中断的数据处理系统、处理设备切换方法、连接设备
KR100216580B1 (ko) 비동기전달모드 교환기와 운용워크스테이션간의 통신장애상태 관리방법
US10652203B2 (en) Network system, communication control device and address setting method
JP6387603B2 (ja) 冗長通信装置及びその系切替え方法
CN115297173A (zh) Opc通信方法及opc通信系统
JPH0991233A (ja) ネットワーク接続装置
WO1998049621A1 (en) Control message interfacing in a redundant server environment
KR20010090635A (ko) 다중화 서버 시스템을 위한 통신 시스템 및 방법

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant