KR20150077256A - Virtual object generating apparatus and method for data distribution service(dds) communication in multiple network domains - Google Patents

Virtual object generating apparatus and method for data distribution service(dds) communication in multiple network domains Download PDF

Info

Publication number
KR20150077256A
KR20150077256A KR1020140036984A KR20140036984A KR20150077256A KR 20150077256 A KR20150077256 A KR 20150077256A KR 1020140036984 A KR1020140036984 A KR 1020140036984A KR 20140036984 A KR20140036984 A KR 20140036984A KR 20150077256 A KR20150077256 A KR 20150077256A
Authority
KR
South Korea
Prior art keywords
remote
virtual object
end point
dds
information
Prior art date
Application number
KR1020140036984A
Other languages
Korean (ko)
Other versions
KR102152116B1 (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 US14/570,032 priority Critical patent/US20150188996A1/en
Priority to DE102014118963.9A priority patent/DE102014118963A1/en
Publication of KR20150077256A publication Critical patent/KR20150077256A/en
Application granted granted Critical
Publication of KR102152116B1 publication Critical patent/KR102152116B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2854Wide area networks, e.g. public data networks
    • H04L12/2856Access arrangements, e.g. Internet access
    • H04L12/2869Operational details of access network equipments
    • H04L12/287Remote access server, e.g. BRAS
    • H04L12/2874Processing of data for distribution to the subscribers

Abstract

The present invention discloses a technology related to a virtual object generation device for the data distribution service (DDS) communication in a multi-network domain. The virtual object generation device includes: a communication unit which receives the endpoint discovery protocol (EDP) information of remote endpoints from physically or logically separated remote network domains; and a virtual object generation unit which matches the EDP information of the remote endpoints and the information included in the remote network domains stored in a database in advance to generate virtual objects corresponding to the remote endpoints.

Description

다중 네트워크 도메인에서 데이터 분산 서비스(DDS) 통신을 위한 가상 객체 생성 장치 및 방법{VIRTUAL OBJECT GENERATING APPARATUS AND METHOD FOR DATA DISTRIBUTION SERVICE(DDS) COMMUNICATION IN MULTIPLE NETWORK DOMAINS}TECHNICAL FIELD [0001] The present invention relates to a virtual object generation apparatus and method for data distribution service (DDS) communication in multiple network domains,

본 발명은 통신 장치에 관한 것으로, 더욱 상세하게는 다중 네트워크 도메인에서 DDS를 위한 통신 장치에 관한 것이다.
The present invention relates to communication devices, and more particularly to communication devices for DDS in multiple network domains.

네트워크 내의 참여자들이 동일한 타입의 데이터를 빈번하게 교환할 경우에는 데이터 중심 통신 기법이 적합하다. 또한, 네트워크에 참여하는 참여자들의 수가 많고, 동적으로 등록과 등록 해제가 이루어지는 경우에는 응용 프로그램에서 데이터를 교환할 상대를 찾고 연결을 맺는 서버-클라이언트(Server-Client) 방식의 데이터 교환보다는 상대에 대한 인지없이 자신이 원하는 데이터를 발간-구독(Publish-Subscribe)하는 방식의 데이터 교환이 더 효과적이다.Data-centric communication techniques are appropriate when participants in the network frequently exchange data of the same type. In addition, when the number of participants participating in the network is large and dynamically registration and deregistration are performed, it is necessary to find out the partner to exchange data with the application program, and not to exchange data with the server- It is more effective to exchange data by publishing-subscribing data without knowing it.

따라서, 국제기구인 OMG(Object Management Group)에서는 데이터 중심(Data-Centric)의 실시간 데이터 분배를 목적으로 표준 통신 미들웨어(Middleware)인 데이터 분배 서비스(Data Distribution Service; DDS)를 정의하였다.Therefore, the Object Management Group (OMG), an international organization, has defined a data distribution service (DDS), which is a standard communication middleware, for data-centric real-time data distribution.

DDS는 데이터를 발간하는 발간자(Publisher)들과 데이터를 구독하는 구독자(Subscriber)들이 모여서 하나의 네트워크 도메인을 설정하고 서로 약속한 타입의 데이터 샘플을 멀티캐스트(Multicast) 방식으로 통신을 수행할 수 있다.DDS publishers publishers and subscribers subscribing to data gather together to set up a single network domain and communicate data of a promised type of data samples in a multicast manner have.

하지만, DDS는 동일한 네트워크 도메인 내에서 발간자와 구독자 간 통신이 가능하며, 네트워크 도메인이 다른 발간자와 구독자와는 통신이 불가능하다. 다시 말해, DDS는 다중 네트워크 도메인에서 물리적 또는 논리적으로 구분된 네트워크 도메인 간에 멀티캐스트 통신 방식을 지원하는 라우터(Router)가 없다면 통신이 불가능하다.However, DDS can communicate between the publisher and the subscriber within the same network domain, and the network domain can not communicate with other publishers and subscribers. In other words, DDS can not communicate unless there is a router that supports multicast communication between physical or logically separated network domains in multiple network domains.

한편, 종래의 DDS 라우터는 네트워크 도메인 간에 DDS 통신을 위하여 직접 통신을 수행하거나 중계자를 이용하여 통신을 수행할 수 있다.Meanwhile, the conventional DDS router can perform direct communication for DDS communication between network domains or perform communication using an intermediary.

직접 통신 방식은 각각의 네트워크 도메인 내에 구성된 엔드포인트(Endpoint) 즉, 라이터(Writer) 또는 리더(Reader)들이 경유 네트워크를 통해 제어 신호 및 데이터를 직접 교환하는 방식이다.The direct communication method is a method in which an endpoint configured in each network domain, that is, a writer or a reader exchanges control signals and data directly via a network.

그러나, 직접 통신 방식은 경유 네트워크 상태에 따라 엔드포인트에서 요구되는 QoS(Quality of Service)를 만족시킬 수 없다는 문제점이 있다.However, there is a problem that the direct communication method can not satisfy the QoS (Quality of Service) required by the end point according to the state of the transit network.

또한, 경유 네트워크는 신뢰성 보장을 위해 TCP(Transfer Control Protocol) 통신을 사용하는 반면, DDS 표준은 UDP(User Datagram Protocol) 통신을 사용한다. 따라서, 직접 통신 방식은 엔드포인트 간에 TCP 통신이 가능한 DDS 라우터를 설계해야 하므로 DDS 표준을 위반한다는 문제점이 있다.In addition, the DSS network uses UDP (User Datagram Protocol) communication while the deregulated network uses Transfer Control Protocol (TCP) communication for reliability. Therefore, there is a problem that the direct communication method violates the DDS standard because a DDS router that can perform TCP communication between endpoints must be designed.

중계자를 이용한 통신 방식은 중계자를 이용해 데이터를 릴레이(Relay)하는 방식이다. 즉, 중계자를 이용한 통신 방식은 중계자에 엔드포인트를 실제 생성하여 로컬 네트워크 도메인의 제어 신호 및 데이터를 수집하고, 수집된 제어 신호 및 데이터를 원격 네트워크 도메인의 엔드포인트에 배포하는 방식이다.The communication method using the relay is a method of relaying data using an intermediary. That is, in the communication method using the relay, a control signal and data of the local network domain are collected by actually creating an end point in the relay, and the collected control signal and data are distributed to the end points of the remote network domain.

그러나, 중계자를 이용한 통신 방식은 대규모 네트워크에서 중계자에 발생되는 오버헤드가 커지게 된다는 문제점이 있다.However, there is a problem in that a communication method using an intermediary increases the overhead incurred in an intermediary in a large-scale network.

또한, 중계자를 이용한 통신 방식은 중계자에 생성되는 엔드포인트의 수가 네트워크 도메인 수의 배수만큼 증가하므로 제어 신호 및 데이터가 급격히 증가한다는 문제점이 있다.In addition, since the number of endpoints generated in the repeater is increased by a multiple of the number of network domains, there is a problem that control signals and data are rapidly increased.

따라서, 다중 네트워크 도메인에서 DDS 통신을 위한 DDS 라우터에 대한 연구가 필요한 실정이다.
Therefore, it is necessary to study DDS router for DDS communication in multiple network domains.

상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, 다중 네트워크 도메인에서 데이터 분산 서비스(DDS) 통신을 위한 가상 객체 생성 장치를 제공하는데 있다.In order to solve the above problems, an object of the present invention is to provide a virtual object generation apparatus for data distribution service (DDS) communication in multiple network domains.

상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은, 다중 네트워크 도메인에서 데이터 분산 서비스(DDS) 통신을 위한 가상 객체 생성 방법을 제공하는데 있다.
It is another object of the present invention to provide a method for generating a virtual object for data distribution service (DDS) communication in multiple network domains.

상기 목적을 달성하기 위한 본 발명의 실시예에 따른 다중 네트워크 도메인에서 데이터 분산 서비스(DDS) 통신을 위한 가상 객체 생성 장치는 물리적 또는 논리적으로 구분되는 원격 네트워크 도메인으로부터 원격 엔드포인트(Endpoint)의 EDP(Endpoint Discovery Protocol) 정보를 제공받는 통신부 및 상기 원격 엔드포인트의 EDP 정보와 데이터 베이스에 미리 저장된 상기 원격 네트워크 도메인에 포함된 정보를 매칭하여 상기 원격 엔드포인트에 대응되는 가상 객체를 생성하는 가상 객체 생성부를 포함한다.According to an aspect of the present invention, there is provided an apparatus for generating a virtual object for data distribution service (DDS) in a multi-network domain, the apparatus comprising: A virtual object generation unit for generating a virtual object corresponding to the remote end point by matching the EDP information of the remote end point with the information contained in the remote network domain stored in advance in the database, .

여기에서, 상기 원격 네트워크 도메인에 포함된 정보는 상기 원격 네트워크 도메인의 PDP(Participant Discovery Protocol) GUID(Globally Unique Identifier) 정보 및 엔드포인트 GUID정보를 포함할 수 있다.Here, the information included in the remote network domain may include Globally Unique Identifier (PDID) information of the PDP (Participant Discovery Protocol) of the remote network domain and endpoint GUID information.

여기에서, 상기 가상 객체 생성부는 상기 원격 엔드포인트의 EDP 정보에 기반하여 상기 PDP GUID 정보를 검색하고, 검색 결과에 기반하여 상기 엔드포인트 GUID정보를 검색하여 상기 원격 엔드포인트에 대응되는 가상 객체를 생성할 수 있다.Here, the virtual object creation unit searches the PDP GUID information based on the EDP information of the remote end point, retrieves the end point GUID information based on the search result, and creates a virtual object corresponding to the remote end point can do.

여기에서, 상기 가상 객체 생성부는 상기 원격 엔드포인트의 EDP 정보가 상기 원격 네트워크 도메인의 원격 BuiltinPublisher의 HistoryCache에 저장되어 있는 cache 정보인 경우, 상기 원격 네트워크 도메인의 원격 라이터(Writer)에 대응되는 가상 객체를 생성할 수 있다.Here, if the EDP information of the remote end point is the cache information stored in the HistoryCache of the remote BuiltinPublisher of the remote network domain, the virtual object generating unit generates a virtual object corresponding to the remote writer (Writer) of the remote network domain Can be generated.

여기에서, 상기 가상 객체 생성부는 상기 원격 엔드포인트의 EDP 정보가 상기 원격 네트워크 도메인의 원격 BuiltinSubscriber의 HistoryCache에 저장되어 있는 cache 정보인 경우, 상기 원격 네트워크 도메인의 원격 리더(Reader)에 대응되는 가상 객체를 생성할 수 있다.Here, if the EDP information of the remote end point is the cache information stored in the HistoryCache of the remote Builtin Subscriber of the remote network domain, the virtual object generation unit may generate a virtual object corresponding to a remote reader of the remote network domain Can be generated.

여기에서, 상기 원격 엔드포인트에 대응되는 가상 객체는 원격 DDS의 상기 원격 엔드포인트와 DDS의 엔드포인트 간 같은 토픽을 공유하는 상기 원격 엔드포인트의 가상 객체일 수 있다.Here, the virtual object corresponding to the remote end point may be a virtual object of the remote end point sharing the same topic between the remote end point of the remote DDS and the end point of the DDS.

상기 다른 목적을 달성하기 위한 본 발명의 실시예에 따른 다중 네트워크 도메인에서 데이터 분산 서비스(DDS) 통신을 위한 가상 객체 생성 방법은 물리적 또는 논리적으로 구분되는 원격 네트워크 도메인으로부터 원격 엔드포인트(Endpoint)의 EDP(Endpoint Discovery Protocol) 정보를 제공받는 단계 및 상기 원격 엔드포인트의 EDP 정보와 데이터 베이스에 미리 저장된 상기 원격 네트워크 도메인에 포함된 정보를 매칭하여 상기 원격 엔드포인트에 대응되는 가상 객체를 생성하는 단계를 포함한다.According to another aspect of the present invention, there is provided a method for creating a virtual object for data distribution service (DDS) in a multi-network domain, the method comprising: (Endpoint Discovery Protocol) information, and generating a virtual object corresponding to the remote end point by matching the EDP information of the remote end point with the information contained in the remote network domain stored in advance in the database do.

여기에서, 상기 원격 네트워크 도메인에 포함된 정보는 상기 원격 네트워크 도메인의 PDP(Participant Discovery Protocol) GUID(Globally Unique Identifier) 정보 및 엔드포인트 GUID정보를 포함할 수 있다.Here, the information included in the remote network domain may include Globally Unique Identifier (PDID) information of the PDP (Participant Discovery Protocol) of the remote network domain and endpoint GUID information.

여기에서, 상기 원격 엔드포인트에 대응되는 가상 객체를 생성하는 단계는 상기 원격 엔드포인트의 EDP 정보에 기반하여 상기 PDP GUID 정보를 검색하고, 검색 결과에 기반하여 상기 엔드포인트 GUID정보를 검색하여 상기 원격 엔드포인트에 대응되는 가상 객체를 생성할 수 있다.The generating of the virtual object corresponding to the remote end point may include searching the PDP GUID information based on the EDP information of the remote end point, searching the endpoint GUID information based on the search result, The virtual object corresponding to the end point can be created.

여기에서, 상기 원격 엔드포인트에 대응되는 가상 객체를 생성하는 단계는 상기 원격 엔드포인트의 EDP 정보가 상기 원격 네트워크 도메인의 원격 BuiltinPublisher의 HistoryCache에 저장되어 있는 cache 정보인 경우, 상기 원격 네트워크 도메인의 원격 라이터(Writer)에 대응되는 가상 객체를 생성할 수 있다.Here, the step of generating a virtual object corresponding to the remote endpoint may include: if the EDP information of the remote end point is cache information stored in the HistoryCache of the remote BuiltinPublisher of the remote network domain, A virtual object corresponding to the Writer can be created.

여기에서, 상기 원격 엔드포인트에 대응되는 가상 객체를 생성하는 단계는 상기 원격 엔드포인트의 EDP 정보가 상기 원격 네트워크 도메인의 원격 BuiltinSubscriber의 HistoryCache에 저장되어 있는 cache 정보인 경우, 상기 원격 네트워크 도메인의 원격 리더(Reader)에 대응되는 가상 객체를 생성할 수 있다.The step of generating a virtual object corresponding to the remote endpoint may include: if the EDP information of the remote end point is cache information stored in the HistoryCache of the remote Builtin Subscriber of the remote network domain, A virtual object corresponding to the reader can be created.

여기에서, 상기 원격 엔드포인트에 대응되는 가상 객체는 원격 DDS의 상기 원격 엔드포인트와 DDS의 엔드포인트 간 같은 토픽을 공유하는 상기 원격 엔드포인트의 가상 객체일 수 있다.
Here, the virtual object corresponding to the remote end point may be a virtual object of the remote end point sharing the same topic between the remote end point of the remote DDS and the end point of the DDS.

원격 네트워크 도메인의 엔드포인트에 대응되는 가상 객체와 자신의 네트워크 도메인에 포함된 엔드포인트와 DDS 통신을 수행함으로써 엔드포인트에서 요구되는 QoS(Quality of Service)를 만족시킬 수 있다는 효과가 제공된다. It is possible to satisfy QoS (Quality of Service) required at the end point by performing DDS communication with the virtual object corresponding to the end point of the remote network domain and the end point included in the own network domain.

또한, DDS 표준을 위반하지 않고 서로 다른 네트워크 도메인에 구성된 엔드포인트 간 DDS 통신을 수행할 수 있다는 효과가 제공된다.In addition, there is an effect that DDS communication can be performed between endpoints configured in different network domains without violating the DDS standard.

또한, 가상 객체 생성 장치에 엔드포인트를 실제 생성하지 않고 데이터를 릴레이함으로써 라우터에서 발생되는 부하를 줄일 수 있고, PDP 및 EDP등의 제어 신호 및 데이터를 급격히 줄일 수 있다는 효과가 제공된다.
In addition, the load generated in the router can be reduced by relaying the data to the virtual object creation device without actually creating the end point, and the control signal and data such as the PDP and the EDP can be sharply reduced.

도 1은 본 발명의 일 실시예에 따른 DDS의 주요 구성을 나타내는 블록도이다.
도 2는 본 발명의 일 실시예에 따른 다중 네트워크 도메인에서 DDS 통신을 위한 전체 시스템을 나타내는 블록도이다.
도 3은 본 발명의 일 실시예에 따른 다중 네트워크 도메인에서 DDS 통신을 위한 가상 객체 생성 장치를 나타내는 블록도이다.
도 4는 본 발명의 일 실시예에 따른 가상 객체 생성 장치를 포함하는 DDS 라우터 간에 PDP 정보와 EDP 정보를 교환하는 과정을 나타내는 도면이다.
도 5는 본 발명의 일 실시예에 따른 다중 네트워크 도메인에서 가상 객체를 이용한 DDS 통신을 설명하기 위한 도면이다.
도 6은 본 발명의 일 실시예에 따른 다중 네트워크 도메인에서 가상 객체 생성을 통해 DDS 통신을 수행하는 과정을 나타내는 순서도이다.
도 7은 본 발명의 일 실시예에 따른 다중 네트워크 도메인에서 원격 엔드포인트에 대응되는 가상 객체 생성 과정을 나타내는 순서도이다.
도 8은 본 발명의 일 실시예에 따른 다중 네트워크 도메인에서 원격 라이터(Writer)에 대응되는 가상 객체 생성 과정을 나타내는 순서도이다.
도 9은 본 발명의 일 실시예에 따른 다중 네트워크 도메인에서 원격 리더(Reader)에 대응되는 가상 객체 생성 과정을 나타내는 순서도이다.
1 is a block diagram illustrating a main configuration of a DDS according to an embodiment of the present invention.
2 is a block diagram illustrating an overall system for DDS communication in multiple network domains according to an embodiment of the present invention.
3 is a block diagram illustrating an apparatus for generating a virtual object for DDS communication in multiple network domains according to an embodiment of the present invention.
4 is a diagram illustrating a process of exchanging PDP information and EDP information between DDS routers including a virtual object generation apparatus according to an embodiment of the present invention.
5 is a diagram illustrating DDS communication using virtual objects in multiple network domains according to an embodiment of the present invention.
6 is a flowchart illustrating a process of performing DDS communication through creation of a virtual object in multiple network domains according to an embodiment of the present invention.
7 is a flowchart illustrating a process of creating a virtual object corresponding to a remote end point in multiple network domains according to an embodiment of the present invention.
8 is a flowchart illustrating a virtual object creation process corresponding to a remote writer in multiple network domains according to an exemplary embodiment of the present invention.
9 is a flowchart illustrating a process of creating a virtual object corresponding to a remote reader in multiple network domains according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail. It should be understood, however, that the invention is not intended to be limited to the particular embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. Like reference numerals are used for like elements in describing each drawing.

제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. The terms first, second, A, B, etc. may be used to describe various elements, but the elements should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component. And / or < / RTI > includes any combination of a plurality of related listed items or any of a plurality of related listed items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. It is to be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, . On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used in this application is used only to describe a specific embodiment and is not intended to limit the invention. The singular expressions include plural expressions unless the context clearly dictates otherwise. In the present application, the terms "comprises" or "having" and the like are used to specify that there is a feature, a number, a step, an operation, an element, a component or a combination thereof described in the specification, But do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
Unless defined otherwise, 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 this invention belongs. Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the contextual meaning of the related art and are to be interpreted as either ideal or overly formal in the sense of the present application Do not.

이하에서는, 첨부된 도면을 참조하여 본 발명의 일 실시예에 따른 다중 네트워크 도메인에서 데이터 분산 서비스(DDS) 통신을 위한 가상 객체 생성 장치를 설명한다.Hereinafter, a virtual object creating apparatus for data distribution service (DDS) communication in multiple network domains according to an embodiment of the present invention will be described with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 DDS의 주요 구성을 나타내는 블록도이다.1 is a block diagram illustrating a main configuration of a DDS according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 일 실시예에 따른 DDS의 주요 구성(100)은 참여자(Participant; P1, P2), 발간자(Publisher; Pub), 구독자(Sublisher; Sub), 엔드포인트(Endpoint; W1, W2, R1, R2) 및 HistoryCache(미도시)를 포함할 수 있다. 여기에서, 엔드포인트(W1, W2, R1, R2)는 라이터(Writer; W1, W2) 또는 리더(Reader; R1, R2)를 포함할 수 있다.Referring to FIG. 1, a main configuration 100 of a DDS according to an exemplary embodiment of the present invention includes a participant (P1, P2), a publisher (Pub), a subscriber (Sub), an endpoint ; W1, W2, R1, R2) and HistoryCache (not shown). Here, the end points W1, W2, R1, and R2 may include writers W1 and W2 or readers R1 and R2.

참여자(P1, P2)는 네트워크에 참여하는 주체로서, 애플리케이션이 도메인에 가입하기 위해서 한 개 이상의 참여자(P1, P2)를 생성할 수 있다. 또한, 참여자(P1, P2)는 멀티캐스트(Multicast) 방식 또는 브로드캐스트(Broadcast) 방식을 이용하여 같은 토픽(Topic)을 가진 참여자끼리만 통신을 수행할 수 있다.Participants P1 and P2 are subjects participating in the network, and the application can create one or more participants P1 and P2 to join the domain. In addition, the participants P1 and P2 can communicate only with participants having the same topic using a multicast method or a broadcast method.

여기에서, 토픽은 도메인 내에서 후술할 발간자(Pub)들과 구독자(Sub)들이 교환하는 데이터 타입으로, 데이터 중심의 실시간 데이터 분배의 목적에 대하여 데이터 메시지 표준으로 다양하게 정의됨으로써 이용될 수 있다.Here, a topic is a data type exchanged between publishers and subscribers (to be described later) within a domain, and can be used by being variously defined as a data message standard for the purpose of data-centric real-time data distribution .

또한, 참여자(P1, P2)는 역할에 따라 데이터를 제공하는 발간자(Pub) 및 데이터를 제공받는 구독자(Sub) 중에서 적어도 어느 하나를 포함할 수 있다. 여기에서, 발간자(Pub)와 구독자(Sub)는 한 개 이상일 수 있다.In addition, the participants P1 and P2 may include at least one of a Pub providing data according to a role and a Sub receiving a data. Here, the publisher (Pub) and the subscriber (Sub) can be one or more.

발간자(Pub)는 데이터 발간(Publish)을 담당하는 객체로서, 한 개 이상의 라이터(W1, W2)를 포함할 수 있다. 또한, 발간자(Pub)는 애플리케이션이 라이터(W1, W2)를 이용하여 토픽을 도메인에 쓰면, 상기 토픽을 후술할 구독자(Sub)에게 제공할 수 있다.The publisher Pub is an object responsible for publishing data and may include one or more writers W1 and W2. In addition, the publisher Pub may provide the topic to subscribers (to be described later) when the application writes the topic to the domain using the writers W1 and W2.

구독자(Sub)는 데이터 구독(Subscribe)을 담당하는 객체로서, 한 개 이상의 리더(R1, R2)를 포함할 수 있다. 또한, 구독자(Sub)는 발간자(Pub)로부터 토픽을 제공받을 수 있고, 제공받은 토픽은 리더(R1, R2)에 제공될 수 있다. 또한, 애플리케이션은 리더(R1, R2)를 이용하여 제공받은 토픽을 읽을 수 있다.A subs is an object for subscribing to data and may include one or more readers R1 and R2. In addition, the subscriber (Sub) can receive the topic from the publisher (Pub), and the received topic can be provided to the reader (R1, R2). In addition, the application can read the provided topic using the reader (R1, R2).

HistoryCache(미도시)는 라이터(W1, W2)와 리더(R1, R2)에 송수신한 CacheChange 클래스를 유지하는 히스토리 버퍼(History Butter)로서, 라이터(W1, W2)와 리더(R1, R2)에 일대일 매칭될 수 있다. 여기에서, CacheChange 클래스는 실제 전송할 데이터들과 데이터 정보들을 유지한다. 또한, HistoryCache(미도시)는 BuiltinPublisher의 HistoryCache 및 BuiltinSubscriber의 HistoryCache를 포함할 수 있다.
A history cache (not shown) is a history buffer that holds the CacheChange class sent to and received from the writers W1 and W2 and the readers R1 and R2. Can be matched. Here, the CacheChange class holds data and data information to be actually transmitted. In addition, the HistoryCache (not shown) may include the HistoryCache of the BuiltinPublisher and the HistoryCache of the BuiltinSubscriber.

도 2는 본 발명의 일 실시예에 따른 다중 네트워크 도메인에서 DDS 통신을 위한 전체 시스템을 나타내는 블록도이다.2 is a block diagram illustrating an overall system for DDS communication in multiple network domains according to an embodiment of the present invention.

도 2를 참조하면, 본 발명의 일 실시예에 따른 다중 네트워크 도메인에서 DDS 통신을 위한 전체 시스템은 복수의 네트워크 도메인 및 경유 네트워크를 포함한다.Referring to FIG. 2, an overall system for DDS communication in multiple network domains according to an embodiment of the present invention includes a plurality of network domains and a network.

복수의 네트워크는 설명의 간명성을 위하여 도 2에 도시된 바와 같이 두 개의 네트워크 도메인으로 구성될 수 있지만, 이에 한정되는 것은 아니고 네트워크 도메인의 개수는 세 개 이상일 수 있다.The plurality of networks may be composed of two network domains as shown in FIG. 2 for the sake of clarity of explanation, but the number of network domains may be three or more.

복수의 네트워크 도메인은 네트워크 도메인(1) 및 원격 네트워크 도메인(5)을 포함할 수 있다.The plurality of network domains may include a network domain 1 and a remote network domain 5.

여기에서, 원격의 의미는 설명의 간명성을 위하여 원격 네트워크 도메인(5)이 네트워크 도메인(1)으로부터 물리적 또는 논리적으로 구분되어 위치함을 의미한다.Here, the remote meaning means that the remote network domain 5 is physically or logically separated from the network domain 1 for the sake of explanation.

여기에서, 도메인은 데이터 공유 영역으로서, 도메인에 속한 애플리케이션에 논리적으로 분리된 가상 네트워크(Virtual Network)를 제공할 수 있다.Here, the domain is a data sharing domain, and can provide logically separated virtual networks to applications belonging to the domain.

또한, 네트워크 도메인(1)과 원격 네트워크 도메인(5)은 경유 네트워크(3)로 연결될 수 있고, 경유 네트워크(3)를 통해 각각의 네트워크 도메인(1, 5)에 포함된 정보를 서로 송수신할 수 있다.The network domain 1 and the remote network domain 5 can also be connected to the passthru network 3 and can transmit and receive information contained in the respective network domains 1 and 5 via the passthru network 3 have.

여기에서, 경유 네트워크(3)는 유선 통신망, 무선 통신망 또는 그 결합일 수 있다. 여기에서, 경유 네트워크(3)는 TCP(Transmission Control Protocol) 통신 방식을 사용할 수 있다.Here, the diesel network 3 may be a wired communication network, a wireless communication network, or a combination thereof. Here, the transit network 3 can use a TCP (Transmission Control Protocol) communication method.

또한, 네트워크 도메인(1)과 원격 네트워크 도메인(5) 각각은 가상 객체 생성 장치(200)와 DDS(100)를 포함할 수 있다. 여기에서, 원격DDS는 DDS(100)와 원격 가상 객체 생성 장치는 가상 객체 생성 장치(200)와 동일한 구성과 기능을 가질 수 있다.In addition, each of the network domain 1 and the remote network domain 5 may include the virtual object generation apparatus 200 and the DDS 100. [ Here, the remote DDS 100 and the remote virtual object generation apparatus may have the same configuration and function as the virtual object generation apparatus 200. [

가상 객체 생성 장치(200)는 원격 네트워크 도메인(5)으로부터 제공받은 원격 엔드포인트(Endpoint)의 EDP(Endpoint Discovery Protocol) 정보와 데이터 베이스에 미리 저장된 원격 네트워크 도메인(5)에 포함된 정보를 매칭하여 원격 엔드포인트에 대응되는 가상 객체를 생성할 수 있다.The virtual object creation apparatus 200 matches the EDP information of the remote endpoint provided from the remote network domain 5 with the information contained in the remote network domain 5 previously stored in the database A virtual object corresponding to a remote end point can be created.

DDS(100)는 가상 객체 생성 장치(200)와 연결될 수 있다. 또한, DDS(100)의 엔드포인트는 가상 객체 생성 장치(200)에서 생성된 원격 엔드포인트에 대응되는 가상 객체와 DDS 통신을 수행할 수 있다.
The DDS 100 may be connected to the virtual object creation apparatus 200. The end point of the DDS 100 may perform DDS communication with the virtual object corresponding to the remote end point generated by the virtual object generation apparatus 200. [

도 3은 본 발명의 일 실시예에 따른 다중 네트워크 도메인에서 DDS 통신을 위한 가상 객체 생성 장치를 나타내는 블록도이다.3 is a block diagram illustrating an apparatus for generating a virtual object for DDS communication in multiple network domains according to an embodiment of the present invention.

도 2 및 도 3을 참조하면, 본 발명의 일 실시예에 따른 가상 객체 생성 장치(200)는 통신부(210) 및 가상 객체 생성부(220)를 포함한다.2 and 3, the apparatus for generating virtual objects 200 according to an exemplary embodiment of the present invention includes a communication unit 210 and a virtual object creation unit 220.

여기에서, 가상 객체 생성 장치(200)는 DDS 라우터에 포함될 수 있다.Here, the virtual object creating apparatus 200 may be included in the DDS router.

통신부(210)는 경유 네트워크(3)를 통해 물리적 또는 논리적으로 구분되는 원격 네트워크 도메인(5)의 원격 가상 객체 생성 장치에 연결될 수 있다. 또한, 통신부(210)는 원격 가상 객체 생성 장치로부터 원격 엔드포인트의 EDP 정보를 제공받을 수 있다.The communication unit 210 may be connected to a remote virtual object creation apparatus of the remote network domain 5 physically or logically separated via the passthru network 3. [ Also, the communication unit 210 can receive the EDP information of the remote end point from the remote virtual object creation apparatus.

또한, 통신부(210)는 도 3에 도시된 바와 같이 가상 객체 생성 장치(200)의 내부에 위치할 수 있지만, 이에 한정되는 것은 아니고 데이터를 송수신 할 수 있다면 어떠한 위치라도 무방하다.In addition, the communication unit 210 may be located inside the virtual object creation apparatus 200 as shown in FIG. 3. However, the communication unit 210 may be located at any position as long as it can transmit and receive data.

가상 객체 생성부(220)는 통신부(210)에 연결될 수 있다. 또한, 가상 객체 생성부(220)는 통신부(210)로부터 원격 엔드포인트의 EDP 정보를 제공받을 수 있다. The virtual object creating unit 220 may be connected to the communication unit 210. In addition, the virtual object generation unit 220 may receive the EDP information of the remote end point from the communication unit 210. [

또한, 가상 객체 생성부(220)는 제공받은 원격 엔드포인트의 EDP 정보와 데이터 베이스에 미리 저장된 원격 네트워크 도메인(5)에 포함된 정보 간의 매칭을 수행할 수 있다. 또한, 가상 객체 생성부(220)는 매칭 결과에 따라 원격 엔드포인트에 대응되는 가상 객체를 생성할 수 있다.In addition, the virtual object creation unit 220 may perform matching between the EDP information of the provided remote end point and the information contained in the remote network domain 5 previously stored in the database. In addition, the virtual object generation unit 220 may generate a virtual object corresponding to the remote end point according to the matching result.

여기에서, 원격 엔드포인트에 대응되는 가상 객체는 원격 DDS의 원격 엔드포인트와 DDS(100)의 엔드포인트 간 같은 토픽을 공유하는 원격 엔드포인트의 가상 객체일 수 있다. 즉, 원격 엔드포인트에 대응되는 가상 객체는 원격 DDS의 원격 엔드포인트와DDS(100)의 엔드포인트 간 DDS 통신이 요구되는 것만 생성될 수 있다.Here, the virtual object corresponding to the remote end point may be a virtual object of the remote end point sharing the same topic between the remote end point of the remote DDS and the end point of the DDS 100. [ That is, only the virtual object corresponding to the remote end point can be generated that requires DDS communication between the remote end point of the remote DDS and the end point of the DDS 100.

데이터 베이스는 가상 객체 생성부(220) 내부에 포함될 수 있지만, 이에 한정되는 것은 아니고 데이터를 저장하고 송수신할 수 있다면 어떠한 위치라도 무방하다.The database may be included in the virtual object creation unit 220, but it is not limited thereto, and any location can be used as long as data can be stored and transmitted / received.

일 예에서, 데이터 베이스는 DDS(100)의 HistoryCache에 저장되어 있는 cash를 저장할 수 있다. 여기에서, 데이터 베이스는 DDS(100)의 BuiltinPublisher의 HistoryCache로부터 cache 정보를 제공받아 저장할 수 있다. 여기에서, 데이터 베이스는 DDS(100)의 BuiltinSubscriber의 HistoryCache에 저장되어 있는 cache 정보를 제공받아 저장할 수 있다. 다른 예에서, 데이터 베이스는 DDS(100)의 HistoryCache일 수 있다.In one example, the database may store the cash stored in the HistoryCache of the DDS 100. Here, the database can receive cache information from the HistoryCache of the BuiltinPublisher of the DDS 100 and store it. Here, the database can receive and store the cache information stored in the HistoryCache of the BuiltinSubscriber of the DDS 100. In another example, the database may be the HistoryCache of the DDS 100. [

또한, 데이터 베이스는 원격 네트워크 도메인(5)에 포함된 정보를 저장할 수 있다. 여기에서, 원격 네트워크 도메인(5)에 포함된 정보는 원격 네트워크 도메인(5)의 PDP(Participant Discovery Protocol) 정보 및 EDP 정보를 포함할 수 있다. In addition, the database may store information contained in the remote network domain 5. Here, the information contained in the remote network domain 5 may include Participant Discovery Protocol (PDP) information and EDP information of the remote network domain 5.

구체적으로, PDP 정보는 참여자의 도메인 참여 정보, 참여자의 생존 정보, 참여자 검색을 위한 정보 및 도메인 내의 참여자들을 구분하기 위한 PDP GUID(Globally Unique Identifier) 정보를 포함할 수 있다.Specifically, the PDP information may include domain participation information of the participant, survival information of the participant, information for searching for participants, and PDP GUID (globally unique identifier) information for identifying participants in the domain.

구체적으로, EDP 정보는 엔드포인트 정보, 토픽 정보 및 도메인 내의 엔드포인트들을 구분하기 위한 엔드포인트 GUID 정보를 포함할 수 있다.Specifically, the EDP information may include endpoint information, topic information, and endpoint GUID information for identifying endpoints in the domain.

가상 객체 생성부(220)는 원격 엔드포인트의 EDP 정보에 기반하여 데이터 베이스에 미리 저장된 원격 네트워크 도메인(5)의PDP GUID 정보를 검색하고, 검색 결과에 따라 제1 검색결과를 생성할 수 있다. The virtual object creation unit 220 may search the PDP GUID information of the remote network domain 5 previously stored in the database based on the EDP information of the remote end point and generate the first search result according to the search result.

또한, 가상 객체 생성부(220)는 제1 검색결과에 기반하여 데이터 베이스에 미리 저장된 원격 네트워크 도메인(5)의 엔드포인트 GUID정보를 검색하고, 검색 결과에 따라 제2 검색결과를 생성할 수 있다. In addition, the virtual object creation unit 220 may search the endpoint GUID information of the remote network domain 5 previously stored in the database based on the first search result, and generate the second search result according to the search result .

또한, 가상 객체 생성부(220)는 제2 검색결과에 따라 원격 엔드포인트에 대응되는 가상 객체를 생성할 수 있다.In addition, the virtual object creating unit 220 may create a virtual object corresponding to the remote end point according to the second search result.

일 예에서, 가상 객체 생성부(220)는 데이터 베이스에 원격 네트워크 도메인(5)의 엔드포인트 GUID정보가 존재하는 경우, 기존에 생성되어 데이터 베이스에 미리 저장된 원격 엔드포인트에 대응되는 가상 객체를 이용할 수 있다.In one example, when the endpoint GUID information of the remote network domain 5 exists in the database, the virtual object creation unit 220 uses a virtual object corresponding to the remote end point that has been created and stored in advance in the database .

다른 예에서, 가상 객체 생성부(220)는 데이터 베이스에 원격 네트워크 도메인(5)의 엔드포인트 GUID정보가 부존재 하는 경우, 원격 엔드포인트에 대응되는 가상 객체를 생성할 수 있다. 또한, 가상 객체 생성부(220)는 생성된 원격 엔드포인트에 대응되는 가상 객체의 정보를 데이터 베이스에 저장할 수 있다.In another example, if the endpoint GUID information of the remote network domain 5 does not exist in the database, the virtual object creating unit 220 may create a virtual object corresponding to the remote endpoint. In addition, the virtual object creating unit 220 may store the information of the virtual object corresponding to the created remote end point in the database.

가상 객체 생성부(220)는 원격 엔드포인트의 EDP 정보가 원격 네트워크 도메인(5)의 원격 BuiltinPublisher의 HistoryCache에 저장되어 있는 cache 정보인 경우, 원격 BuiltinPublisher의 HistoryCache에 저장되어 있는 cache 정보에 기반하여 데이터 베이스에 미리 저장된 원격 네트워크 도메인(5)의PDP GUID 정보를 검색하고, 검색 결과에 따라 제3 검색결과를 생성할 수 있다. If the EDP information of the remote end point is the cache information stored in the HistoryCache of the remote BuiltinPublisher in the remote network domain 5, the virtual object generating unit 220 generates a virtual object based on the cache information stored in the HistoryCache of the remote BuiltinPublisher The PDP GUID information of the remote network domain 5 stored in advance in the PDP GUID information, and generate the third search result according to the search result.

또한, 가상 객체 생성부(220)는 제3 검색결과에 기반하여 데이터 베이스에 미리 저장된 원격 네트워크 도메인(5)의 엔드포인트 GUID정보를 검색하고, 검색 결과에 따라 제4 검색결과를 생성할 수 있다. In addition, the virtual object creation unit 220 may search the endpoint GUID information of the remote network domain 5 previously stored in the database based on the third search result, and generate the fourth search result according to the search result .

또한, 가상 객체 생성부(220)는 제4 검색결과에 따라 원격 네트워크 도메인(5)의 원격 라이터(Writer)에 대응되는 가상 객체를 생성할 수 있다.In addition, the virtual object creation unit 220 may create a virtual object corresponding to a remote writer of the remote network domain 5 according to the fourth search result.

일 예에서, 가상 객체 생성부(220)는 데이터 베이스에 원격 네트워크 도메인의 엔드포인트 GUID정보가 존재하는 경우, 기존에 생성되어 데이터 베이스에 미리 저장된 원격 라이터에 대응되는 가상 객체를 이용할 수 있다.In an example, when the endpoint GUID information of the remote network domain exists in the database, the virtual object creating unit 220 may use a virtual object corresponding to the remote writer that has been created and stored in advance in the database.

다른 예에서, 가상 객체 생성부(220)는 데이터 베이스에 원격 네트워크 도메인(5)의 엔드포인트 GUID정보가 부존재 하는 경우, 원격 라이터에 대응되는 가상 객체를 생성할 수 있다. 또한, 가상 객체 생성부(220)는 생성된 원격 라이터에 대응되는 가상 객체의 정보를 데이터 베이스에 저장할 수 있다. 또한, 가상 객체 생성부(220)는 원격 라이터에 대응되는 가상 객체와 자신의 BuiltinSubscriber의 HistoryCache에 저장된 cash 정보를 비교하여 일치되는 구독자 정보를 연결시킬 수 있다.In another example, when the endpoint GUID information of the remote network domain 5 does not exist in the database, the virtual object creating unit 220 may create a virtual object corresponding to the remote writer. In addition, the virtual object creation unit 220 may store the information of the virtual object corresponding to the generated remote writer in the database. In addition, the virtual object creating unit 220 may compare the cash information stored in the HistoryCache of the builtin subscriber of the virtual object corresponding to the remote writer to connect the matching subscriber information.

가상 객체 생성부(220)는 원격 엔드포인트의 EDP 정보가 원격 네트워크 도메인(5)의 원격 BuiltinSubscriber의 HistoryCache에 저장되어 있는 cache 정보인 경우, 원격 BuiltinSubscriber의 HistoryCache에 저장되어 있는 cache 정보에 기반하여 데이터 베이스에 미리 저장된 원격 네트워크 도메인(5)의PDP GUID 정보를 검색하고, 검색 결과에 따라 제5 검색결과를 생성할 수 있다. If the EDP information of the remote end point is the cache information stored in the HistoryCache of the remote BuiltinSubscriber of the remote network domain 5, the virtual object creating unit 220 creates a virtual object based on the cache information stored in the HistoryCache of the remote Builtin Subscriber The PDP GUID information of the remote network domain 5 previously stored in the PDP GUID of the remote network domain 5, and generate the fifth search result according to the search result.

또한, 가상 객체 생성부(220)는 제5 검색결과에 기반하여 데이터 베이스에 미리 저장된 원격 네트워크 도메인(5)의 엔드포인트 GUID정보를 검색하고, 검색 결과에 따라 제6 검색결과를 생성할 수 있다. In addition, the virtual object creation unit 220 may search the endpoint GUID information of the remote network domain 5 previously stored in the database based on the fifth search result, and generate the sixth search result according to the search result .

또한, 가상 객체 생성부(220)는 제6 검색결과에 따라 원격 네트워크 도메인(5)의 원격 리더(Reader)에 대응되는 가상 객체를 생성할 수 있다.In addition, the virtual object creation unit 220 may create a virtual object corresponding to a remote reader of the remote network domain 5 according to the sixth search result.

일 예에서, 가상 객체 생성부(220)는 데이터 베이스에 원격 네트워크 도메인(5)의 엔드포인트 GUID정보가 존재하는 경우, 기존에 생성되어 데이터 베이스에 미리 저장된 원격 리더에 대응되는 가상 객체를 이용할 수 있다.In a case where the endpoint GUID information of the remote network domain 5 exists in the database, the virtual object creation unit 220 can use a virtual object corresponding to the remote reader previously created and stored in the database in advance have.

다른 예에서, 가상 객체 생성부(220)는 데이터 베이스에 원격 네트워크 도메인(5)의 엔드포인트 GUID정보가 부존재 하는 경우, 원격 리더에 대응되는 가상 객체를 생성할 수 있다. 또한, 가상 객체 생성부(220)는 생성된 원격 리더에 대응되는 가상 객체의 정보를 데이터 베이스에 저장할 수 있다. 또한, 가상 객체 생성부(220)는 원격 리더에 대응되는 가상 객체와 자신의 BuiltinPublisher의 HistoryCache에 저장된 cash 정보를 비교하여 일치되는 발간자 정보를 연결시킬 수 있다.
In another example, if the endpoint GUID information of the remote network domain 5 does not exist in the database, the virtual object creation unit 220 can create a virtual object corresponding to the remote reader. In addition, the virtual object creating unit 220 may store the virtual object information corresponding to the generated remote reader in the database. In addition, the virtual object generation unit 220 may compare the cash information stored in the HistoryCache of the builtin publisher with the virtual object corresponding to the remote reader to connect the corresponding publisher information.

상술한 봐와 같이, 본 발명의 일 실시예에 따른 다중 네트워크 도메인에서DDS 통신을 위한 가상 객체 생성 장치는 원격 네트워크 도메인의 엔드포인트에 대응되는 가상 객체를 생성하고, 생성된 가상 객체와 자신의 네트워크 도메인에 포함된 엔드포인트와 DDS 통신을 수행할 수 있다.As described above, an apparatus for generating a virtual object for DDS communication in multiple network domains according to an embodiment of the present invention generates a virtual object corresponding to an end point of a remote network domain, DDS communication with the endpoints contained in the domain.

따라서, 서로 다른 네트워크 도메인에 구성된 엔드포인트들이 경유 네트워크를 통해 DDS 통신을 직접 수행하는 종래의 직접 통신 방식보다 본 발명의 일 실시예에 따른 가상 객체 생성 장치를 이용하여 네트워크 도메인 간 DDS 통신을 수행함으로써 엔드포인트에서 요구되는 QoS(Quality of Service)를 만족시킬 수 있다. 또한, DDS 표준을 위반하지 않고 서로 다른 네트워크 도메인에 구성된 엔드포인트 간 DDS 통신을 수행할 수 있다.Therefore, DDS communication between network domains is performed using a virtual object generation apparatus according to an embodiment of the present invention, rather than a conventional direct communication method in which endpoints configured in different network domains directly perform DDS communication through a pass-through network It is possible to satisfy the QoS (Quality of Service) required at the end point. In addition, DDS communications can be performed between endpoints configured in different network domains without violating the DDS standard.

또한, 중계자에 엔드포인트를 실제 생성하여 데이터를 릴레이 하는 종래의 중계자를 이용한 통신 방식보다 본 발명의 일 실시예에 따른 가상 객체 생성 장치는 엔드포인트를 실제 생성하지 않고 데이터를 릴레이함으로써 라우터에서 발생되는 부하를 줄일 수 있고, PDP 및 EDP등의 제어 신호 및 데이터를 급격히 줄일 수 있다.
In addition, the virtual object creation apparatus according to an embodiment of the present invention, rather than a conventional communication method using an intermediary that relays data by actually creating an end point to an intermediary, The load can be reduced, and control signals and data such as PDP and EDP can be sharply reduced.

도 4는 본 발명의 일 실시예에 따른 가상 객체 생성 장치를 포함하는 DDS 라우터 간에 PDP 정보와 EDP 정보를 교환하는 과정을 나타내는 도면이다. 4 is a diagram illustrating a process of exchanging PDP information and EDP information between DDS routers including a virtual object generation apparatus according to an embodiment of the present invention.

도 4를 참조하면, 본 발명의 일 실시예에 따른 DDS 라우터(DDS R1)는 상술한 가상 객체 생성 장치를 포함할 수 있다.Referring to FIG. 4, a DDS router (DDS R1) according to an embodiment of the present invention may include the virtual object generation apparatus described above.

아래에서는 DDS 라우터(DDS R1)를 접속하는 라우터, 원격 DDS 라우터(DDS R2)를 접속받는 라우터라고 하여 설명한다.In the following description, a router connecting a DDS router (DDS R1) and a router connecting a remote DDS router (DDS R2) are described.

먼저, DDS 라우터(DDS R1)가 원격 DDS 라우터(DDS R2)에 접속될 수 있다(S201).First, the DDS router (DDS R1) can be connected to the remote DDS router (DDS R2) (S201).

이후, 원격 DDS 라우터(DDS R2)는 자신의 PDP GUID 정보를 DDS 라우터(DDS R1)에 제공할 수 있다(S202). Thereafter, the remote DDS router (DDS R2) may provide its PDP GUID information to the DDS router (DDS R1) (S202).

여기에서, PDP GUID 정보에는 라우터들을 구별할 수 있는 정보가 포함되고, 라우터들의 우선 순위를 결정할 수 있는 정보가 포함될 수 있다. 즉, PDP GUID를 교환하지 않는다면, 라우터들이 동시에 접속했을 때 어떤 라우터가 접속 됐는지 알수 없으며, 라우터들의 우선 순위를 결정할 수 없다.Here, the PDP GUID information includes information that can distinguish the routers, and information that can determine the priorities of the routers can be included. That is, unless the PDP GUIDs are exchanged, it is impossible to know which router is connected when the routers are connected at the same time, and the priority of the routers can not be determined.

여기에서, PDP GUID 정보에는 가상 객체, 즉 가상 라이터 및 가상 리더를 생성할 때 기준 GUID 정보를 제공할 수 있다.Here, the PDP GUID information may provide the reference GUID information when generating the virtual objects, i.e., the virtual writer and the virtual reader.

또한, DDS 라우터(DDS R1)가 새로운 PDP GUID 정보를 할당 받은(S202) 이후, DDS 라우터(DDS R1)는 원격 DDS 라우터(DDS R2)에게 자신의 BuiltinPublisher 및 BuiltinSubscriber의 HistoryCache에 저장되어 있는 cache 정보를 모두 전송할 수 있다(S203).
After the DDS router (DDS R1) has been allocated new PDP GUID information (S202), the DDS router (DDS R1) transmits the cache information stored in the HistoryCache of its BuiltinPublisher and BuiltinSubscriber to the remote DDS router (S203).

도 5는 본 발명의 일 실시예에 따른 다중 네트워크 도메인에서 가상 객체를 이용한 DDS 통신을 설명하기 위한 도면이다.5 is a diagram illustrating DDS communication using virtual objects in multiple network domains according to an embodiment of the present invention.

도 5를 참조하면, 네트워크 도메인(1)은 DDS(100) 및 DDS 라우터(DDS R1)를 포함할 수 있고, 원격 네트워크 도메인(5)은 원격 DDS 및 원격 DDS 라우터(DDS R2)를 포함할 수 있다. 여기에서, DDS 라우터(DDS R1)는 가상 객체 생성 장치(200)를 포함할 수 있고, 원격 DDS 라우터(DDS R2)는 원격 가상 객체 생성 장치를 포함할 수 있다.5, a network domain 1 may include a DDS 100 and a DDS router DDS R1, and a remote network domain 5 may include a remote DDS and a remote DDS router DDS R2. have. Here, the DDS router (DDS R1) may include the virtual object creating apparatus 200, and the remote DDS router (DDS R2) may include the remote virtual object creating apparatus.

DDS(100)는 3개의 참여자(P11, P12, P13)를 포함하고, 각각의 참여자(P11, P12, P13)는 한 개의 엔드포인트(W11, R12, R13)를 포함할 수 있다. 여기에서, 참여자 P11은 라이터 W11를 포함하고, 라이터 W11은 블루 토픽(BT)를 가질 수 있다. 또한, 참여자 P12는 리더 R12를 포함하고, 리더 R12는 레드 토픽(RT)를 가질 수 있다. 또한, 참여자 P13은 리더 R13을 포함하고, 리더 R13은 레드 토픽(RT)를 가질 수 있다.The DDS 100 includes three participants P11, P12 and P13 and each participant P11, P12 and P13 may include one endpoint W11, R12 and R13. Here, the participant P11 includes the writer W11, and the writer W11 may have the blue topic BT. Further, the participant P12 may include a reader R12, and the reader R12 may have a red topic (RT). Further, the participant P13 may include a leader R13, and the leader R13 may have a red topic (RT).

원격 DDS는 3개의 참여자(P21, P22, P23)를 포함할 수 있다. 여기에서, 참여자 P21은 라이터 W21을 포함하고, 라이터 W21은 레드 토픽(RT)를 가질 수 있다. 또한, 참여자 P22는 리더 R22를 포함하고, 리더 R22는 화이트 토픽(WT)를 가질 수 있다. 또한, 참여자 P23은 리더 R23 및 라이터 W24를 포함하고, 리더 R23은 블루 토픽(BT)을 가질수 있으며, 라이터 W24는 화이트 토픽(WT)을 가질 수 있다.The remote DDS may include three participants (P21, P22, P23). Here, the participant P21 includes the writer W21, and the writer W21 may have the red topic (RT). The participant P22 may include a leader R22, and the leader R22 may have a white topic WT. Further, the participant P23 may include a reader R23 and a writer W24, the reader R23 may have a blue topic BT, and the writer W24 may have a white topic WT.

DDS 라우터(DDS R1)는 원격 네트워크 도메인(5)의 원격 엔드포인트(W21, R22, R23, W24)에 대응되는 가상 객체를 생성할 수 있다. The DDS router DDS R1 may create a virtual object corresponding to the remote endpoints W21, R22, R23, and W24 of the remote network domain 5.

원격 DDS 라우터(DDS R2)는 네트워크 도메인(1)의 엔드포인트(W11, R12, R13)에 대응되는 가상 객체를 생성할 수 있다. The remote DDS router DDS R2 may create a virtual object corresponding to the endpoints W11, R12, R13 of the network domain 1. [

이때, 생성되는 가상 객체는 DDS 라우터(DDS R1)가 포함된 네트워크 도메인(1)의 엔드포인트와 원격 DDS 라우터(DDS R2)가 포함된 원격 네트워크 도메인(5)의 원격 엔드포인트 간 DDS 통신이 수행되는 엔드포인트들 만 생성할 수 있다.At this time, the generated virtual object performs DDS communication between the end point of the network domain 1 including the DDS router (DDS R1) and the remote end point of the remote network domain 5 including the remote DDS router (DDS R2) Only endpoints can be created.

즉, DDS 라우터(DDS R1)와 원격 DDS 라우터(DDS R2)는 같은 토픽(BT, RT)을 공유하는 엔드포인트에 대한 가상 객체 만 생성을 할 수 있다. That is, the DDS router (DDS R1) and the remote DDS router (DDS R2) can only create virtual objects for endpoints sharing the same topic (BT, RT).

여기에서, DDS 라우터(DDS R1)는 원격 네트워크 도메인(5)에서 레드 토픽(RT)을 가지는 라이터 W21과 블루 토픽(BT)을 가지는 리더 R23에 대응되는 가상 객체를 생성할 수 있다. 여기에서, 원격 DDS 라우터(DDS R2)는 네트워크 도메인(1)에서 레드 토픽(RT)을 가지는 리더 R12 및 리더 R13과 블루 토픽(BT)을 가지는 라이터W11에 대응되는 가상 객체를 생성할 수 있다.Here, the DDS router DDS R1 may generate a virtual object corresponding to the writer W21 having the red topic (RT) and the reader R23 having the blue topic (BT) in the remote network domain 5. Here, the remote DDS router DDS R2 may create a virtual object corresponding to the reader R12 having the red topic (RT) and the reader R13 and the writer W11 having the blue topic (BT) in the network domain 1.

또한, 원격 네트워크 도메인(5)에만 포함된 화이트 토픽(WT)을 가지는 리더R22와 라이터 W24에 대한 가상 객체는 생성되지 않을 수 있다.
In addition, a virtual object for the reader R22 and the writer W24 having the white topic WT included only in the remote network domain 5 may not be created.

이하에서는, 첨부된 도면을 참조하여 본 발명의 일 실시예에 따른 다중 네트워크 도메인에서 데이터 분산 서비스(DDS) 통신을 위한 가상 객체 생성 방법에대해 설명한다. 특히, 상술한 본 발명의 일 실시예에 따른 다중 네트워크 도메인에서 데이터 분산 서비스(DDS) 통신을 위한 가상 객체 생성 장치와 중복되는 부분은 설명의 간명성을 위하여 생략한다.Hereinafter, a method for creating a virtual object for data distribution service (DDS) communication in multiple network domains according to an embodiment of the present invention will be described with reference to the accompanying drawings. Particularly, in order to simplify the explanation, the overlapping part of the virtual object creating apparatus for data distribution service (DDS) communication in the multiple network domain according to the embodiment of the present invention is omitted.

도 6은 본 발명의 일 실시예에 따른 다중 네트워크 도메인에서 가상 객체 생성을 통해 DDS 통신을 수행하는 과정을 나타내는 순서도이다.6 is a flowchart illustrating a process of performing DDS communication through creation of a virtual object in multiple network domains according to an embodiment of the present invention.

도 6을 참조하면, 본 발명의 일 실시예에 따른 다중 네트워크 도메인에서 가상 객체 생성을 통해 DDS 통신을 수행하는 과정은 원격 엔드포인트의 EDP 정보를 제공받는 단계(S500), 원격 엔드포인트에 대응되는 가상 객체를 생성하는 단계(S600) 및 원격 엔드포인트에 대응되는 가상 객체와 엔드포인트 간 DDS 통신을 수행하는 단계(S700)를 포함할 수 있다.Referring to FIG. 6, a process of performing DDS communication through creation of a virtual object in multiple network domains according to an embodiment of the present invention includes receiving a EDP information of a remote end point (S500) A step S600 of creating a virtual object, and a step S700 of performing DDS communication between the virtual object and the endpoint corresponding to the remote endpoint.

먼저, 물리적 또는 논리적으로 구분되는 DDS 라우터 간에 접속이 이루어질 수 있다(S300). First, a connection can be made between DDS routers that are physically or logically distinguished (S300).

이후, DDS 라우터 간 PDP 정보와 EDP 정보를 교환할 수 있다(S400). 여기에서, PDP 정보와 EDP 정보를 교환하는 과정은 도 4를 참조하여 상술하였으므로 설명의 간명성을 위해 생략한다.Thereafter, PDP information and EDP information between DDS routers can be exchanged (S400). Here, the process of exchanging the PDP information and the EDP information has been described above with reference to FIG. 4, and thus is omitted for the sake of simplicity of explanation.

이후, 물리적 또는 논리적으로 구분되는 원격 네트워크 도메인으로부터 원격 엔드포인트의 EDP 정보를 제공받을 수 있다(500). Thereafter, the EDP information of the remote end point may be received from the remote network domain that is physically or logically separated (500).

이후, 원격 엔드포인트의 EDP 정보와 데이터 베이스에 미리 저장된 원격 네트워크 도메인에 포함된 정보 간의 매칭을 통해 원격 엔드포인트에 대응되는 가상 객체를 생성할 수 있다(S600).In operation S600, a virtual object corresponding to the remote endpoint may be generated through matching between the EDP information of the remote endpoint and the information contained in the remote network domain previously stored in the database.

여기에서, 원격 네트워크 도메인에 포함된 정보는 원격 네트워크 도메인의 PDP 정보 및 EDP 정보를 포함할 수 있다. 구체적으로, 원격 네트워크 도메인에 포함된 정보는 원격 네트워크 도메인의 PDP GUID 정보 및 엔드포인트 GUID정보를 포함할 수 있다.Here, the information contained in the remote network domain may include PDP information and EDP information of the remote network domain. In particular, the information contained in the remote network domain may include PDP GUID information and endpoint GUID information of the remote network domain.

여기에서, 원격 엔드포인트에 대응되는 가상 객체는 원격 DDS의 원격 엔드포인트와 DDS의 엔드포인트 간 같은 토픽을 공유하는 원격 엔드포인트의 가상 객체일 수 있다. 즉, 원격 엔드포인트에 대응되는 가상 객체는 원격 DDS의 원격 엔드포인트와DDS의 엔드포인트 간 DDS 통신이 요구되는 것만 생성될 수 있다.Here, the virtual object corresponding to the remote endpoint may be a virtual object of the remote endpoint that shares the same topic between the remote endpoint of the remote DDS and the endpoint of the DDS. That is, a virtual object corresponding to a remote end point can be generated only in which DDS communication is required between the remote end point of the remote DDS and the end point of the DDS.

이후, 원격 엔드포인트에 대응되는 가상 객체와 자신의 엔드포인트 간 DDS 통신을 수행할 수 있다(S700).
Thereafter, the DDS communication between the virtual object corresponding to the remote end point and its own end point can be performed (S700).

도 7은 본 발명의 일 실시예에 따른 다중 네트워크 도메인에서 원격 엔드포인트에 대응되는 가상 객체 생성 과정을 나타내는 순서도이다. 7 is a flowchart illustrating a process of creating a virtual object corresponding to a remote end point in multiple network domains according to an embodiment of the present invention.

도 7을 참조하면, 본 발명의 일 실시예에 따른 원격 엔드포인트에 대응되는 가상 객체 생성 과정은 원격 엔드포인트의 EDP 정보를 제공받을 수 있다(S500).Referring to FIG. 7, the virtual object generation process corresponding to the remote end point according to an embodiment of the present invention may receive the EDP information of the remote end point (S500).

이후, 원격 엔드포인트의 EDP 정보에 기반하여 데이터 베이스에 미리 저장된 원격 네트워크 도메인의PDP GUID 정보를 검색하고, 검색 결과에 따라 제1 검색결과를 생성할 수 있다(610).Then, based on the EDP information of the remote end point, the PDP GUID information of the remote network domain stored in advance in the database may be searched and the first search result may be generated according to the search result (610).

이후, 제1 검색결과에 기반하여 데이터 베이스에 미리 저장된 원격 네트워크 도메인의 엔드포인트 GUID정보를 검색하고, 검색 결과에 따라 제2 검색결과를 생성할 수 있다(620).Then, based on the first search result, the end point GUID information of the remote network domain previously stored in the database may be searched, and the second search result may be generated according to the search result (620).

이후, 제2 검색결과에 따라 원격 엔드포인트에 대응되는 가상 객체를 생성할 수 있다(S630).Thereafter, the virtual object corresponding to the remote end point may be generated according to the second search result (S630).

여기에서, 데이터 베이스에 원격 네트워크 도메인의 엔드포인트 GUID정보가 존재하는 경우, 기존에 생성되어 데이터 베이스에 미리 저장된 원격 엔드포인트에 대응되는 가상 객체를 이용할 수 있다(S631).If the endpoint GUID information of the remote network domain exists in the database, the virtual object corresponding to the remote endpoint previously created and stored in the database may be used (S631).

여기에서, 데이터 베이스에 원격 네트워크 도메인의 엔드포인트 GUID정보가 부존재하는 경우, 원격 엔드포인트에 대응되는 가상 객체를 생성할 수 있다(S633). 이후, 생성된 원격 엔드포인트에 대응되는 가상 객체의 정보를 데이터 베이스에 저장할 수 있다(S635).
If the endpoint GUID information of the remote network domain does not exist in the database, the virtual object corresponding to the remote endpoint can be created (S633). Then, the information of the virtual object corresponding to the generated remote end point can be stored in the database (S635).

도 8은 본 발명의 일 실시예에 따른 다중 네트워크 도메인에서 원격 라이터(Writer)에 대응되는 가상 객체 생성 과정을 나타내는 순서도이다. 8 is a flowchart illustrating a virtual object creation process corresponding to a remote writer in multiple network domains according to an exemplary embodiment of the present invention.

도 8을 참조하면, 본 발명의 일 실시예에 따른 원격 라이터(Writer)에 대응되는 가상 객체 생성 과정은 원격 엔드포인트의 EDP 정보를 제공받을 수 있다(S500).Referring to FIG. 8, a virtual object generation process corresponding to a remote writer according to an embodiment of the present invention may receive EDP information of a remote end point (S500).

여기에서, 원격 엔드포인트의 EDP 정보는 원격 네트워크 도메인의 원격 BuiltinPublisher의 HistoryCache에 저장되어 있는 cache 정보일 수 있다.Here, the EDP information of the remote endpoint may be the cache information stored in the HistoryCache of the remote BuiltinPublisher of the remote network domain.

이후, 원격 네트워크 도메인의 원격 BuiltinPublisher의 HistoryCache에 저장되어 있는 cache 정보에 기반하여 데이터 베이스에 미리 저장된 원격 네트워크 도메인의PDP GUID 정보를 검색하고, 검색 결과에 따라 제3 검색결과를 생성할 수 있다(S640). Then, based on the cache information stored in the HistoryCache of the remote BuiltinPublisher in the remote network domain, the PDP GUID information of the remote network domain stored in advance in the database can be searched and the third search result can be generated according to the search result (S640 ).

이후, 제3 검색결과에 기반하여 데이터 베이스에 미리 저장된 원격 네트워크 도메인의 엔드포인트 GUID정보를 검색하고, 검색 결과에 따라 제4 검색결과를 생성할 수 있다(650).Then, based on the third search result, the end point GUID information of the remote network domain previously stored in the database may be searched, and the fourth search result may be generated according to the search result (650).

이후, 제4 검색결과에 따라 원격 라이터에 대응되는 가상 객체를 생성할 수 있다(S660).Thereafter, the virtual object corresponding to the remote writer may be created according to the fourth search result (S660).

여기에서, 데이터 베이스에 원격 네트워크 도메인의 엔드포인트 GUID정보가 존재하는 경우, 기존에 생성되어 데이터 베이스에 미리 저장된 원격 라이터에 대응되는 가상 객체를 이용할 수 있다(S661).If the endpoint GUID information of the remote network domain exists in the database, the virtual object corresponding to the remote writer previously created and stored in the database may be used (S661).

여기에서, 데이터 베이스에 원격 네트워크 도메인의 엔드포인트 GUID정보가 부존재하는 경우, 원격 라이터에 대응되는 가상 객체를 생성할 수 있다(S663). 이후, 생성된 원격 라이터에 대응되는 가상 객체의 정보를 데이터 베이스에 저장할 수 있다(S665). If the endpoint GUID information of the remote network domain does not exist in the database, the virtual object corresponding to the remote writer can be created (S663). Then, the information of the virtual object corresponding to the created remote writer can be stored in the database (S665).

이후, 원격 라이터에 대응되는 가상 객체와 자신의 BuiltinSubscriber의 HistoryCache에 저장된 cash 정보를 비교하여 일치되는 구독자 정보를 연결시킬 수 있다.
Thereafter, the virtual object corresponding to the remote writer is compared with the cash information stored in the HistoryCache of the BuiltinSubscriber of the subscriber, and concatenated subscriber information can be connected.

도 9은 본 발명의 일 실시예에 따른 다중 네트워크 도메인에서 원격 리더(Reader)에 대응되는 가상 객체 생성 과정을 나타내는 순서도이다. 9 is a flowchart illustrating a process of creating a virtual object corresponding to a remote reader in multiple network domains according to an embodiment of the present invention.

도 9를 참조하면, 본 발명의 일 실시예에 따른 원격 리더(Reader)에 대응되는 가상 객체 생성 과정은 원격 엔드포인트의 EDP 정보를 제공받을 수 있다(S500).Referring to FIG. 9, a virtual object generation process corresponding to a remote reader according to an embodiment of the present invention may receive the EDP information of the remote end point (S500).

여기에서, 원격 엔드포인트의 EDP 정보는 상기 원격 네트워크 도메인의 원격 BuiltinSubscriber의 HistoryCache에 저장되어 있는 cache 정보일 수 있다.Here, the EDP information of the remote end point may be cache information stored in the HistoryCache of the remote Builtin Subscriber of the remote network domain.

이후, 원격 네트워크 도메인의 원격 BuiltinSubscriber의 HistoryCache에 저장되어 있는 cache 정보에 기반하여 데이터 베이스에 미리 저장된 원격 네트워크 도메인의PDP GUID 정보를 검색하고, 검색 결과에 따라 제5 검색결과를 생성할 수 있다(670).Then, based on the cache information stored in the HistoryCache of the remote BuiltinSubscriber of the remote network domain, the PDP GUID information of the remote network domain stored in advance in the database can be searched and the fifth search result can be generated according to the search result ).

이후, 제5 검색결과에 기반하여 데이터 베이스에 미리 저장된 원격 네트워크 도메인의 엔드포인트 GUID정보를 검색하고, 검색 결과에 따라 제6 검색결과를 생성할 수 있다(680).Then, based on the fifth search result, the end point GUID information of the remote network domain stored in advance in the database may be searched and a sixth search result may be generated according to the search result (680).

이후, 제6 검색결과에 따라 원격 리더에 대응되는 가상 객체를 생성할 수 있다(S690).Thereafter, the virtual object corresponding to the remote reader may be generated according to the sixth search result (S690).

여기에서, 데이터 베이스에 원격 네트워크 도메인의 엔드포인트 GUID정보가 존재하는 경우, 기존에 생성되어 데이터 베이스에 미리 저장된 원격 리더에 대응되는 가상 객체를 이용할 수 있다(S691).If the endpoint GUID information of the remote network domain exists in the database, the virtual object corresponding to the remote reader previously created and stored in the database may be used (S691).

여기에서, 데이터 베이스에 원격 네트워크 도메인의 엔드포인트 GUID정보가 부존재하는 경우, 원격 리더에 대응되는 가상 객체를 생성할 수 있다(S693). 이후, 생성된 원격 리더에 대응되는 가상 객체의 정보를 데이터 베이스에 저장할 수 있다(S695).Here, if the endpoint GUID information of the remote network domain does not exist in the database, the virtual object corresponding to the remote reader can be created (S693). Then, the information of the virtual object corresponding to the generated remote reader can be stored in the database (S695).

이후, 원격 리더에 대응되는 가상 객체와 자신의 BuiltinPublisher의 HistoryCache에 저장된 cash 정보를 비교하여 일치되는 발간자 정보를 연결시킬 수 있다.
Then, the cash information stored in the HistoryCache of the BuiltinPublisher can be compared with the virtual object corresponding to the remote reader, and the corresponding publisher information can be connected.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit or scope of the present invention as defined by the following claims It can be understood that

1: 네트워크 도메인 3: 경유 네트워크
5: 원격 네트워크 도메인 100: DDS
200: 가상 객체 생성 장치 210: 통신부
220: 가상 객체 생성부
1: Network domain 3: Transit network
5: Remote network domain 100: DDS
200: Virtual Object Generation Device 210:
220: virtual object creation unit

Claims (12)

물리적 또는 논리적으로 구분되는 원격 네트워크 도메인으로부터 원격 엔드포인트(Endpoint)의 EDP(Endpoint Discovery Protocol) 정보를 제공받는 통신부; 및
상기 원격 엔드포인트의 EDP 정보와 데이터 베이스에 미리 저장된 상기 원격 네트워크 도메인에 포함된 정보를 매칭하여 상기 원격 엔드포인트에 대응되는 가상 객체를 생성하는 가상 객체 생성부를 포함하는,
다중 네트워크 도메인에서 데이터 분산 서비스(DDS) 통신을 위한 가상 객체 생성 장치.
A communication unit that receives EDP (Endpoint Discovery Protocol) information of a remote endpoint from a remote or network domain that is physically or logically divided; And
And a virtual object generation unit for generating a virtual object corresponding to the remote end point by matching the EDP information of the remote end point with the information contained in the remote network domain previously stored in the database,
A device for generating virtual objects for data distribution service (DDS) communication in multiple network domains.
제 1 항에 있어서,
상기 원격 네트워크 도메인에 포함된 정보는,
상기 원격 네트워크 도메인의 PDP(Participant Discovery Protocol) GUID(Globally Unique Identifier) 정보 및 엔드포인트 GUID정보를 포함하는,
다중 네트워크 도메인에서 데이터 분산 서비스(DDS) 통신을 위한 가상 객체 생성 장치.
The method according to claim 1,
Wherein the information contained in the remote network domain comprises:
(PDP) GUID (Globally Unique Identifier) information and end point GUID information of the remote network domain,
A device for generating virtual objects for data distribution service (DDS) communication in multiple network domains.
제 2 항에 있어서,
상기 가상 객체 생성부는,
상기 원격 엔드포인트의 EDP 정보에 기반하여 상기 PDP GUID 정보를 검색하고, 검색 결과에 기반하여 상기 엔드포인트 GUID정보를 검색하여 상기 원격 엔드포인트에 대응되는 가상 객체를 생성하는,
다중 네트워크 도메인에서 데이터 분산 서비스(DDS) 통신을 위한 가상 객체 생성 장치.
3. The method of claim 2,
Wherein the virtual object generation unit comprises:
Searching the PDP GUID information based on the EDP information of the remote end point and searching the end point GUID information based on the search result to generate a virtual object corresponding to the remote end point,
A device for generating virtual objects for data distribution service (DDS) communication in multiple network domains.
제 3 항에 있어서,
상기 가상 객체 생성부는,
상기 원격 엔드포인트의 EDP 정보가 상기 원격 네트워크 도메인의 원격 BuiltinPublisher의 HistoryCache에 저장되어 있는 cache 정보인 경우, 상기 원격 네트워크 도메인의 원격 라이터(Writer)에 대응되는 가상 객체를 생성하는,
다중 네트워크 도메인에서 데이터 분산 서비스(DDS) 통신을 위한 가상 객체 생성 장치.
The method of claim 3,
Wherein the virtual object generation unit comprises:
Generating a virtual object corresponding to a remote writer (Writer) of the remote network domain when EDP information of the remote end point is cache information stored in HistoryCache of a remote BuiltinPublisher in the remote network domain;
A device for generating virtual objects for data distribution service (DDS) communication in multiple network domains.
제 3 항에 있어서
상기 가상 객체 생성부는,
상기 원격 엔드포인트의 EDP 정보가 상기 원격 네트워크 도메인의 원격 BuiltinSubscriber의 HistoryCache에 저장되어 있는 cache 정보인 경우, 상기 원격 네트워크 도메인의 원격 리더(Reader)에 대응되는 가상 객체를 생성하는,
다중 네트워크 도메인에서 데이터 분산 서비스(DDS) 통신을 위한 가상 객체 생성 장치.
The method of claim 3, wherein
Wherein the virtual object generation unit comprises:
Generating a virtual object corresponding to a remote reader of the remote network domain when the EDP information of the remote end point is cache information stored in a HistoryCache of a remote Builtin Subscriber of the remote network domain;
A device for generating virtual objects for data distribution service (DDS) communication in multiple network domains.
제 1 항에 있어서,
상기 원격 엔드포인트에 대응되는 가상 객체는,
원격 DDS의 상기 원격 엔드포인트와 DDS의 엔드포인트 간 같은 토픽을 공유하는 상기 원격 엔드포인트의 가상 객체인,
다중 네트워크 도메인에서 데이터 분산 서비스(DDS) 통신을 위한 가상 객체 생성 장치.
The method according to claim 1,
The virtual object corresponding to the remote end point may include:
Which is a virtual object of the remote end point sharing the same topic between the remote end point of the remote DDS and the end point of the DDS,
A device for generating virtual objects for data distribution service (DDS) communication in multiple network domains.
물리적 또는 논리적으로 구분되는 원격 네트워크 도메인으로부터 원격 엔드포인트(Endpoint)의 EDP(Endpoint Discovery Protocol) 정보를 제공받는 단계; 및
상기 원격 엔드포인트의 EDP 정보와 데이터 베이스에 미리 저장된 상기 원격 네트워크 도메인에 포함된 정보를 매칭하여 상기 원격 엔드포인트에 대응되는 가상 객체를 생성하는 단계를 포함하는,
다중 네트워크 도메인에서 데이터 분산 서비스(DDS) 통신을 위한 가상 객체 생성 방법.
Receiving endpoint discovery protocol (EDP) information of a remote endpoint from a remote or network domain that is physically or logically separated; And
And generating a virtual object corresponding to the remote end point by matching the EDP information of the remote end point with the information contained in the remote network domain stored in advance in the database,
A method for creating virtual objects for data distribution service (DDS) communication in multiple network domains.
제 7 항에 있어서,
상기 원격 네트워크 도메인에 포함된 정보는,
상기 원격 네트워크 도메인의 PDP(Participant Discovery Protocol) GUID(Globally Unique Identifier) 정보 및 엔드포인트 GUID정보를 포함하는,
다중 네트워크 도메인에서 데이터 분산 서비스(DDS) 통신을 위한 가상 객체 생성 방법.
8. The method of claim 7,
Wherein the information contained in the remote network domain comprises:
(PDP) GUID (Globally Unique Identifier) information and end point GUID information of the remote network domain,
A method for creating virtual objects for data distribution service (DDS) communication in multiple network domains.
제 8 항에 있어서,
상기 원격 엔드포인트에 대응되는 가상 객체를 생성하는 단계는,
상기 원격 엔드포인트의 EDP 정보에 기반하여 상기 PDP GUID 정보를 검색하고, 상기 검색 결과에 기반하여 상기 엔드포인트 GUID정보를 검색하여 상기 원격 엔드포인트에 대응되는 가상 객체를 생성하는,
다중 네트워크 도메인에서 데이터 분산 서비스(DDS) 통신을 위한 가상 객체 생성 방법.
9. The method of claim 8,
Wherein the step of generating a virtual object corresponding to the remote end point comprises:
Searching the PDP GUID information based on the EDP information of the remote end point and searching the end point GUID information based on the search result to generate a virtual object corresponding to the remote end point,
A method for creating virtual objects for data distribution service (DDS) communication in multiple network domains.
제 9 항에 있어서,
상기 원격 엔드포인트에 대응되는 가상 객체를 생성하는 단계에서는,
상기 원격 엔드포인트의 EDP 정보가 상기 원격 네트워크 도메인의 원격 BuiltinPublisher의 HistoryCache에 저장되어 있는 cache 정보인 경우, 상기 원격 네트워크 도메인의 원격 라이터(Writer)에 대응되는 가상 객체를 생성하는,
다중 네트워크 도메인에서 데이터 분산 서비스(DDS) 통신을 위한 가상 객체 생성 방법.
10. The method of claim 9,
In the step of creating a virtual object corresponding to the remote end point,
Generating a virtual object corresponding to a remote writer (Writer) of the remote network domain when EDP information of the remote end point is cache information stored in HistoryCache of a remote BuiltinPublisher in the remote network domain;
A method for creating virtual objects for data distribution service (DDS) communication in multiple network domains.
제 9 항에 있어서
상기 원격 엔드포인트에 대응되는 가상 객체를 생성하는 단계에서는,
상기 원격 엔드포인트의 EDP 정보가 상기 원격 네트워크 도메인의 원격 BuiltinSubscriber의 HistoryCache에 저장되어 있는 cache 정보인 경우, 상기 원격 네트워크 도메인의 원격 리더(Reader)에 대응되는 가상 객체를 생성하는,
다중 네트워크 도메인에서 데이터 분산 서비스(DDS) 통신을 위한 가상 객체 생성 방법.
The method of claim 9, wherein
In the step of creating a virtual object corresponding to the remote end point,
Generating a virtual object corresponding to a remote reader of the remote network domain when the EDP information of the remote end point is cache information stored in a HistoryCache of a remote Builtin Subscriber of the remote network domain;
A method for creating virtual objects for data distribution service (DDS) communication in multiple network domains.
제 7 항에 있어서,
상기 원격 엔드포인트에 대응되는 가상 객체는,
원격 DDS의 상기 원격 엔드포인트와 DDS의 엔드포인트 간 같은 토픽을 공유하는 상기 원격 엔드포인트의 가상 객체인,
다중 네트워크 도메인에서 데이터 분산 서비스(DDS) 통신을 위한 가상 객체 생성 방법.
8. The method of claim 7,
The virtual object corresponding to the remote end point may include:
Which is a virtual object of the remote end point sharing the same topic between the remote end point of the remote DDS and the end point of the DDS,
A method for creating virtual objects for data distribution service (DDS) communication in multiple network domains.
KR1020140036984A 2013-12-26 2014-03-28 Virtual object generating apparatus and method for data distribution service(dds) communication in multiple network domains KR102152116B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US14/570,032 US20150188996A1 (en) 2013-12-26 2014-12-15 Virtual object generating apparatus and method for data distribution service (dds) communication in multiple network domains
DE102014118963.9A DE102014118963A1 (en) 2013-12-26 2014-12-18 Device for generating virtual objects and methods for communication by data distribution service (DDS) in multiple network domains

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020130164424 2013-12-26
KR20130164424 2013-12-26

Publications (2)

Publication Number Publication Date
KR20150077256A true KR20150077256A (en) 2015-07-07
KR102152116B1 KR102152116B1 (en) 2020-09-07

Family

ID=53790062

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140036984A KR102152116B1 (en) 2013-12-26 2014-03-28 Virtual object generating apparatus and method for data distribution service(dds) communication in multiple network domains

Country Status (1)

Country Link
KR (1) KR102152116B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190027104A (en) * 2017-09-06 2019-03-14 서경대학교 산학협력단 Method and platform for dds-based iec61850 request-response communication
KR20190075391A (en) * 2017-12-21 2019-07-01 (주)젠토 Apparatus and method for data distribution service, data distribution service system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008527847A (en) * 2005-01-06 2008-07-24 テーベラ・インコーポレーテッド End-to-end publish / subscribe middleware architecture
KR101078617B1 (en) * 2010-10-27 2011-11-01 한국과학기술정보연구원 Metood for federating meta operation data amoung network domains and federation system of meta operation data thereof
KR20130118593A (en) * 2012-04-20 2013-10-30 한국전자통신연구원 Apparatus and method for processing data in middleware for data distribution service

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008527847A (en) * 2005-01-06 2008-07-24 テーベラ・インコーポレーテッド End-to-end publish / subscribe middleware architecture
KR101078617B1 (en) * 2010-10-27 2011-11-01 한국과학기술정보연구원 Metood for federating meta operation data amoung network domains and federation system of meta operation data thereof
KR20130118593A (en) * 2012-04-20 2013-10-30 한국전자통신연구원 Apparatus and method for processing data in middleware for data distribution service

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
‘The Real-time Publish-Subscribe Wire Protocol DDS Interoperability Wire Protocol Specification (DDS-RTPS)‘, http://www.omg.org/spec/DDS-RTPS/2.1, 2010.11.* *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190027104A (en) * 2017-09-06 2019-03-14 서경대학교 산학협력단 Method and platform for dds-based iec61850 request-response communication
KR20190075391A (en) * 2017-12-21 2019-07-01 (주)젠토 Apparatus and method for data distribution service, data distribution service system

Also Published As

Publication number Publication date
KR102152116B1 (en) 2020-09-07

Similar Documents

Publication Publication Date Title
JP4983104B2 (en) Network system and server
CN113904983A (en) Message processing method, network node and system
CN106790420B (en) A kind of more session channel method for building up and system
US20070280253A1 (en) Peer-to-peer connection between switch fabric endpoint nodes
US9307053B2 (en) Direct data placement over user datagram protocol in a network environment
CN101098304A (en) Router and address identification information management server
CN105763440B (en) A kind of method and apparatus of message forwarding
US9172550B2 (en) Management of a multicast system in a software-defined network
KR20150022722A (en) Communications device utilizing a central discovery mechanism, and respective method
EP3041198B1 (en) Finding services in a service-oriented architecture (soa) network
CN102474425B (en) For the method and apparatus of the light host management protocol had on the router of multicast capability
EP3720075B1 (en) Data transmission method and virtual switch
JP5847185B2 (en) Content sharing method and apparatus using group change information in content-centric network environment
JP5612468B2 (en) Method and apparatus for communication of diagnostic data in a real-time communication network
JP2020520612A (en) Packet transmission method, edge device, and machine-readable storage medium
KR20110071453A (en) Zigbee gateway and method for identifying message of the same
US20150188996A1 (en) Virtual object generating apparatus and method for data distribution service (dds) communication in multiple network domains
CN107547391A (en) A kind of message transmitting method and device
CN104486589A (en) Assess method and device of GVRP-based video monitoring system
WO2019128273A1 (en) Method, device and system for determining connection relation of network devices
US9614749B2 (en) Data processing system and method for changing a transmission table
CN103618801A (en) Method, device and system for sharing P2P (Peer-to-Peer) resources
CN111382115B (en) Path creating method and device for network on chip and electronic equipment
EP2880550A1 (en) Connection mesh in mirroring asymmetric clustered multiprocessor systems
CN104486229A (en) Method and equipment for realizing VPN message forwarding

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