KR20100033861A - Data communication system and method in universal plug and play network - Google Patents

Data communication system and method in universal plug and play network Download PDF

Info

Publication number
KR20100033861A
KR20100033861A KR1020080092926A KR20080092926A KR20100033861A KR 20100033861 A KR20100033861 A KR 20100033861A KR 1020080092926 A KR1020080092926 A KR 1020080092926A KR 20080092926 A KR20080092926 A KR 20080092926A KR 20100033861 A KR20100033861 A KR 20100033861A
Authority
KR
South Korea
Prior art keywords
controller
message
event
event message
control command
Prior art date
Application number
KR1020080092926A
Other languages
Korean (ko)
Inventor
안상철
권용무
김경산
Original Assignee
한국과학기술연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국과학기술연구원 filed Critical 한국과학기술연구원
Priority to KR1020080092926A priority Critical patent/KR20100033861A/en
Publication of KR20100033861A publication Critical patent/KR20100033861A/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/02Standardisation; Integration
    • H04L41/0246Exchanging or transporting network management information using the Internet; Embedding network management web servers in network elements; Web-services-based protocols
    • H04L41/0273Exchanging or transporting network management information using the Internet; Embedding network management web servers in network elements; Web-services-based protocols using web services for network management, e.g. simple object access protocol [SOAP]
    • 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/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal
    • H04L61/2582NAT traversal through control of the NAT server, e.g. using universal plug and play [UPnP]

Abstract

PURPOSE: A data communication system in a universal plug and play network and a method thereof are provided to perform MTOM based communications if mass data communication is required when performing a control process between components, thereby enabling high speed data transmission using small network traffic. CONSTITUTION: A communications network performs wire/wireless communications based on UPnP(Universal Plug and Play). When performing a control process after accessing to the communication network and performing an addressing, discovery, and description process, a control unit(10) generates a control command message. The control unit performs an MTOM(Message Transmission Optimization Mechanism) or SOAP(Simple Object Access Protocol) encoding of the control command message according to the data size of the control command message in order to transmit the encoded message to the communication network. A controlled device(20) performs MTOM or SOAP decoding of the received control command message according to an encoding type.

Description

UPnP 네트워크에서의 데이터 통신 시스템 및 방법{Data Communication System and Method in Universal Plug and Play Network}Data communication system and method in WiFi network {Data Communication System and Method in Universal Plug and Play Network}

본 발명은 UPnP 네트워크에서의 데이터 통신 시스템 및 방법에 관한 것으로, 특히 UPnP 네트워크상에서 컴포넌트 간에 UPnP 미들웨어를 이용하여 데이터 통신을 수행하는 UPnP 네트워크에서의 데이터 통신 시스템 및 방법에 관한 것이다.The present invention relates to a data communication system and method in a UPnP network, and more particularly, to a data communication system and method in a UPnP network for performing data communication using UPnP middleware between components on a UPnP network.

일반적으로, UPnP(Universal Plug and Play)는 기존의 컴퓨터 시스템에 존재하던 PnP(Plug and Play) 기술을 네트워크를 기반으로 한 동적 서비스 연동 기술로 확장한 미들웨어이다.In general, UPnP (Universal Plug and Play) is middleware that extends Plug and Play (PnP) technology existing in existing computer systems into a dynamic service interworking technology based on a network.

UPnP 미들웨어를 지원하는 컴포넌트는 제어의 주체가 될 수 있는지 여부에 따라 제어기(Control Point)와 피제어기(Controlled Device)로 구분된다. 제어기는 다른 기기를 검색하거나 제어하며 피제어기는 제어기의 명령에 따라 자신이 제공하는 서비스를 수행한다.Components supporting UPnP middleware are classified into a control point and a controlled device according to whether they can be the subject of control. The controller searches or controls other devices, and the controller performs a service provided by the controller according to a command of the controller.

UPnP 미들웨어는 네트워크에 존재하는 제어기에서 피제어기가 제공하는 서비 스를 자동으로 발견하고 사용할 수 있도록 하는 동적 분산 컴퓨팅 환경을 지원한다.UPnP middleware supports a dynamic distributed computing environment that enables the controllers on the network to automatically discover and use the services provided by the control.

이러한, UPnP 미들웨어는 어드레싱(Addressing), 디스커버리(Discovery), 디스크립션(Description), 컨트롤(Control), 이벤팅(Eventing) 및 프레젠테이션(Presentation) 과정을 포함하는 네트워킹을 수행한다.The UPnP middleware performs networking including addressing, discovery, description, control, eventing, and presentation.

어드레싱 과정은 컴포넌트들이 UPnP 네트워크에 처음 접속할 때, DHCP(Dynamic Host Configuration Protocol) 서버를 검색하여 서버로부터 IP(Internet Protocol) 주소를 할당받거나, DHCP 서버가 운영되지 않는 경우, 자동 IP 지정 기능(이하, 'Auto IP'라 함)에 의해 일정 범위 내에서 IP 주소를 자동으로 선택하여 확보하는 과정을 말한다.The addressing process searches for a Dynamic Host Configuration Protocol (DHCP) server when components first connect to the UPnP network and receives an IP (Internet Protocol) address from the server, or if the DHCP server is not operated, 'Auto IP') refers to the process of automatically selecting and securing an IP address within a certain range.

이와 같이, DHCP 서버에 의하여 할당되거나 Auto IP에 의해 선택된 IP 주소를 사용하는 컴포넌트들은 TCP(Transmission Control Protocol)/IP을 통해 네트워크상의 다른 컴포넌트들과 통신하되, IP 주소를 통해 네트워크상에서 다른 컴포넌트들을 검색 및 조회할 수 있다.As such, components using an IP address assigned by a DHCP server or selected by Auto IP communicate with other components on the network via Transmission Control Protocol (TCP) / IP, while searching for other components on the network via the IP address. And can be queried.

디스커버리 과정은 피제어기가 UPnP 네트워크에 처음 접속하여 UPnP 네트워크상에서 동작하는 피제어기 및 제어기들에게 자신을 알리는 애드버타이징 단계와, 제어기가 UPnP 네트워크에 처음 접속하여 UPnP 네트워크상에서 동작하는 피제어기를 검색하는 검색 단계로 구분할 수 있다.The discovery process includes an advertising step in which the controller first connects to the UPnP network and informs the controller and controllers operating on the UPnP network, and the controller detects the controller operating on the UPnP network by first connecting to the UPnP network. Can be divided into a search step.

애드버타이징 단계에서 UPnP 네트워크에 처음 접속하여 어드레싱 과정을 통해 소정의 IP 주소를 확보한 피제어기는 네트워크상에 먼저 접속되어 있는 피제어 기 및 제어기들에게 자신을 알리는 애드버타이징 메시지를 멀티캐스트(Multicast)하여 자신의 접속을 알린다. 이에, 피제어기의 동작 제어가 가능한 제어기에서는 멀티캐스트로 제공되는 애드버타이징 메시지를 수신하여 해당 피제어기를 제어 대상으로 등록한다.In the advertising stage, the first controllable user who accesses the UPnP network and obtains a predetermined IP address through the addressing process receives an advertising message that informs the controlled controllers and controllers connected to the network first. Multicast to announce your connection. Accordingly, the controller capable of controlling the operation of the controlled controller receives the advertising message provided by the multicast and registers the controlled controller as the control target.

한편, 검색 단계에서 UPnP 네트워크상에 처음 접속된 제어기는 어드레싱 과정을 통해 소정의 IP 주소를 확보하고, 네트워크상에서 동작하는 피제어기들을 확인하기 위해 SSDP(Simpling Stochastic Dynamic Programming)을 이용하여 검색 메시지를 멀티캐스트한다. 이에, 제어기로부터 전송되는 검색 메시지를 수신한 피제어기에서는 수신된 검색 메시지에 대한 응답으로 응답 메시지를 제어기로 유니캐스트(Unicast)한다.On the other hand, the controller connected to the UPnP network for the first time in the retrieval phase acquires a predetermined IP address through the addressing process and multiplies the retrieval message by using Simpling Stochastic Dynamic Programming (SSDP) to identify the controlled controllers operating on the network. Cast Accordingly, the control unit receiving the search message transmitted from the controller unicasts the response message to the controller in response to the received search message.

디스크립션 과정은 제어기가 피제어기에서 제공하는 서비스를 인식하기 위해 피제어기의 IP 주소를 통해 기기 명세 파일(서비스 디스크립션 XML 파일 또는 디바이스 디스크립션 XML 파일)을 요청하여 피제어기로부터 기기 명세 파일을 제공받는 과정을 말한다.In the description process, the controller requests a device specification file (service description XML file or device description XML file) through the controller's IP address to recognize the service provided by the controller, and receives the device specification file from the controller. Say.

컨트롤 과정은 제어기가 디스크립션 과정을 통해 피제어기로부터 제공되는 기기 명세 파일을 분석하여 피제어기에서 제공하는 서비스를 인식한 후, 피제어기를 통해 서비스를 실행시키기 위해, 피제어기에서 제공하는 서비스 실행을 요청하는 제어 명령(Action) 메시지를 피제어기로 전송하고, 해당 제어 명령 메시지를 수신한 피제어기로부터 제어 응답 메시지를 수신함으로써, 피제어기를 제어하는 과정을 말한다. 여기서, 제어 명령 메시지 및 제어 응답 메시지는 SOAP(Simple Object Access Protocol)를 통해 XML로 표현된다.In the control process, the controller analyzes the device specification file provided from the controller through the description process, recognizes the service provided by the controller, and then executes the service provided by the controller to execute the service through the controller. A control command is transmitted by transmitting a control command message to a controller and receiving a control response message from the controller receiving the control command message. Here, the control command message and the control response message are expressed in XML through the Simple Object Access Protocol (SOAP).

이벤팅 과정은 제어기로부터 전달되는 제어 명령 메시지에 의해 소정의 서비스를 제공한 피제어기의 이벤트 발생 여부 즉, 상태 변화 여부를 확인하는 과정을 말한다. 이때, 제어기에서 피제어기의 상태 변화를 확인하기 위해 서브스크립션을 요청하는 메시지를 피제어기로 전송하면, 피제어기에서는 상태 변화를 알리기 위해 GENA(Generic Event Notification Architecture)를 이용하여 텍스트 형태의 이벤트 메시지를 제어기로 전송한다.The eventing process refers to a process of checking whether or not an event occurs, that is, a state change, of a controlled controller providing a predetermined service by a control command message transmitted from a controller. At this time, when the controller transmits a message requesting a subscription to the controller to confirm the state change of the controller, the controller uses GENA (Generic Event Notification Architecture) to inform the controller of the state. Send to the controller.

프레젠테이션 과정은 제어기에서 피제어기의 HTML 페이지를 읽어들이는 과정을 말한다. 여기서, HTML 페이지는 기기를 제어할 수 있는 사용자 인터페이스를 제공하며, 제공된 사용자 인터페이스를 통해 제어되는 기기의 상태를 보여준다.The presentation process refers to the process of reading the HTML page of the controller from the controller. Here, the HTML page provides a user interface for controlling the device and shows the state of the device controlled through the provided user interface.

즉, 컨트롤 과정에서는 제어기 및 피제어기 간에 SOAP을 이용하여 제어 명령 메시지 및 제어 응답 메시지와 같은 제어 관련 메시지를 송수신하는 특징이 있으며, 이벤팅 과정에서는 피제어기가 GENA를 이용하여 이벤트 메시지를 제어기로 전송하는 특징이 있다. 여기서, GENA는 기기 간의 이벤트 메시지 교환을 위해서 사용되며, SOAP은 XML을 이용하여 기기에 제어 명령 등을 전달할 때 사용되는 프로토콜이다.That is, in the control process, a control-related message such as a control command message and a control response message may be transmitted and received between the controller and the controller through the SOAP.In the event of the event, the controller transmits an event message to the controller using GENA. There is a characteristic to. Here, GENA is used to exchange event messages between devices, and SOAP is a protocol used to transmit control commands to devices using XML.

이러한, UPnP는 제어 네트워크를 주요 대상으로 하여 개발된 미들웨어로서, UPnP 미들웨어의 SOAP 등과 같은 프로토콜을 이용하여 네트워크를 구성하는 컴포넌트 간에 소용량 데이터로 이루어진 제어 관련 메시지의 교환을 주요 목적으로 한다.The UPnP is a middleware developed mainly for a control network. The main purpose of the UPnP is to exchange control-related messages composed of small amounts of data between components constituting the network using a protocol such as SOAP of the UPnP middleware.

또한, 대용량 데이터 교환이 필요한 홈 네트워크에서는 사용자의 선택에 따라, 제어 관련 메시지 교환시 UPnP 미들웨어의 프로토콜을 이용하며, 대용량 데이터 교환시 별개의 프로토콜을 이용할 수 있는 UPnP AV 방식과 같은 다중 프로토콜 방식을 적용하고 있다. 하지만, 다중 프로토콜 방식은 사용자에게 선택의 자유를 주는 장점이 있는 반면에, 데이터의 용량에 따라 적합한 프로토콜을 사용자가 일일이 선택해야 하는 등 번거로운 단점이 있어, 로봇 시스템 등에 적용될 경우에는, 사용자가 로봇 시스템을 구성하는 컴포넌트마다 일일이 직접 접근하기에 곤란하므로, 사용자의 불편함만을 가중시키게 된다.In addition, the home network that needs large data exchange uses UPnP middleware protocol when exchanging control-related messages according to user's choice, and adopts multi-protocol method such as UPnP AV which can use separate protocol for large data exchange. Doing. However, while the multi-protocol method has the advantage of giving the user freedom of choice, there is a disadvantage in that the user has to select a suitable protocol according to the capacity of the data. Since it is difficult to directly access each component constituting the component, it only increases the inconvenience of the user.

따라서, 오늘날에는 홈 네트워크 및 로봇 시스템뿐만 아니라 다양한 네트워크 시스템에 적용할 수 있는 UPnP 미들웨어의 프로토콜을 이용한 컴포넌트 간의 대용량 데이터 통신 방식이 필요하다.Therefore, there is a need for a large-scale data communication method between components using a protocol of UPnP middleware that can be applied to not only home networks and robot systems but also various network systems.

그러나, 종래에는 UPnP 미들웨어를 이용하여 컨트롤 과정을 수행하는 경우, 제어기 및 피제어기 간에 SOAP을 이용하여 제어 명령 메시지 및 제어 응답 메시지를 송수신해야 하기 때문에, 대용량의 이진 데이터를 첨부하는 경우에도 base 64 인코딩을 기반으로 한 첨부 방식을 이용해야 하므로, 실제 전송되는 데이터의 크기가 원본 데이터 크기에 비해 33% 증가하여, 이로 인해 데이터를 처리하기 위한 네트워크상의 시스템 리소스가 더욱 증가하고, 데이터 전송 처리 시간이 매우 늦어지는 등의 문제점이 있다.However, conventionally, when performing a control process using UPnP middleware, a control command message and a control response message must be transmitted and received between the controller and the controlled device using SOAP. Thus, even when a large amount of binary data is attached, base 64 encoding is performed. Because of the attachment method based on the system, the size of the actual data is increased by 33% compared to the original data size, which increases the system resources on the network to process the data and the data transmission processing time very much. There are problems such as being late.

또한, UPnP 미들웨어를 이용하여 이벤팅 과정을 수행하는 경우, 피제어기가 GENA를 사용하여 이벤트 메시지를 다수의 제어기로 전송하게 되는데, GENA는 텍스 트 형태의 데이터 전송만을 지원하기 때문에 이진 데이터를 전송할 수 없어, 이벤트 메시지를 간소화하여 간편하게 전송할 수 없는 문제점이 있다.In addition, when the event is performed using the UPnP middleware, the controller transmits an event message to a plurality of controllers using GENA. Since GENA only supports text data transmission, binary data can be transmitted. There is a problem that can not be simply transmitted by simplifying the event message.

더욱이, 피제어기가 전송하는 이벤트 메시지는 UPnP 네트워크에 접속된 모든 제어기들에게 멀티캐스트 방식으로만 전송되기 때문에, 네트워크 트래픽, 네트워크상의 시스템 리소스 및 데이터 보안 관리 측면에서 비효율적인 문제점이 있다.Furthermore, since the event message transmitted by the controlled controller is transmitted only in a multicast manner to all controllers connected to the UPnP network, there is an inefficient problem in terms of network traffic, system resource on the network, and data security management.

본 발명은 전술한 바와 같은 본 발명의 문제점을 해결하기 위해 안출된 것으로, UPnP 네트워크상에서 컴포넌트 간에 컨트롤 과정 수행시 대용량 데이터 통신이 필요한 경우에, MTOM(Message Transmission Opimization Mechanism)을 적용하여 통신을 수행함으로써, 적은 네트워크 트래픽을 사용하면서 대용량의 데이터를 고속으로 전송할 수 있도록 하는 UPnP 네트워크에서의 데이터 통신 시스템 및 방법을 제공하는데, 그 목적이 있다.The present invention has been made to solve the problems of the present invention as described above, when a large data communication is required when performing a control process between components on the UPnP network, by performing the communication by applying the MTOM (Message Transmission Opimization Mechanism) It is an object of the present invention to provide a data communication system and method in a UPnP network that can transmit a large amount of data at high speed while using less network traffic.

또한, 본 발명은 UPnP 네트워크상에서 컴포넌트 간에 GENA를 이용한 이벤트 메시지 통신시에는 통신하려는 이벤트 메시지가 이진 데이터인 경우에, base 64 인코딩 기법을 적용하여 이벤트 메시지를 이진 데이터화하여 전송함으로써, 이벤트 메시지 통신의 효율성을 증진시킬 수 있도록 하는데, 그 목적이 있다.In addition, the present invention, when the event message to be communicated using the GENA between components in the UPnP network is binary data, by applying a base 64 encoding technique to transmit the event message to the binary data, the efficiency of event message communication Its purpose is to increase the level of publicity.

또한, 본 발명은 UPnP 네트워크상에서 컴포넌트 간에 GENA를 이용한 이벤트 메시지 통신시, 멀티캐스트 전송 방식뿐만 아니라, 유니캐스트 전송 방식을 지원함으로써, 네트워크 트래픽, 시스템 리소스 및 보안 관리 측면에서 효율성을 증진시킬 수 있도록 하는데, 그 목적이 있다.In addition, the present invention supports the unicast transmission method as well as the multicast transmission method for event message communication using GENA between components in a UPnP network, thereby improving efficiency in terms of network traffic, system resource and security management. , Its purpose is.

전술한 바와 같은 목적을 달성하기 위한 본 발명의 일 실시예에 따른 UPnP 네트워크에서의 데이터 통신 시스템은, UPnP 기반의 유무선 통신을 수행하는 통신 망과; 상기 통신망에 접속하여 어드레싱, 디스커버리 및 디스크립션 과정을 수행한 후, 컨트롤 과정을 수행하는 경우에, 제어 명령 메시지를 생성하고, 생성된 제어 명령 메시지의 데이터 용량 크기에 따라에 따라 제어 명령 메시지를 MTOM 인코딩 또는 SOAP 인코딩하여 상기 통신망으로 전송하는 제어기와; 상기 통신망을 통해 상기 제어기로부터 제어 명령 메시지를 수신하고, 수신된 제어 명령 메시지의 인코딩 형태에 따라, 수신된 제어 명령 메시지를 MTOM 디코딩 또는 SOAP 디코딩하고, 디코딩된 제어 명령 메시지에 의거하여 서비스를 실행하는 피제어기를 포함하여 이루어지는 것이 바람직하다.According to an aspect of the present invention, there is provided a data communication system in a UPnP network, including: a communication network performing UPnP-based wired and wireless communication; After accessing the communication network and performing an addressing, discovery and description process, when performing a control process, a control command message is generated, and MTOM encoding of the control command message according to the data capacity of the generated control command message is performed. Or a controller for SOAP encoding and transmitting to the communication network; Receiving a control command message from the controller through the communication network, MTOM decoding or SOAP decoding the received control command message according to the encoding type of the received control command message, and executing a service based on the decoded control command message It is preferable to include a controlled group.

또한, 본 발명의 일 실시예에 따른 UPnP 네트워크에서의 데이터 통신 시스템은, UPnP 기반의 유무선 통신을 수행하는 통신망과; 상기 통신망에 접속하여 어드레싱, 디스커버리, 디스크립션 및 컨트롤 과정을 수행한 후, 이벤팅 과정을 수행하는 경우에, 이벤트 발생시 이벤트 메시지를 생성하여 생성된 이벤트 메시지의 데이터 유형에 따라 이벤트 메시지를 base 64 인코딩하고, 인코딩된 이벤트 메시지를 상기 통신망을 통해 GENA를 이용하여 전송하는 피제어기와; 상기 통신망을 통해 상기 피제어기로부터의 이벤트 메시지를 수신하고, 수신된 이벤트 메시지의 데이터 유형에 따라 이벤트 메시지를 base 64 디코딩하고, 디코딩된 이벤트 메시지를 통해 상기 피제어기의 상태 변화를 인식하는 제어기를 포함하여 이루어지는 것이 바람직하다.In addition, a data communication system in a UPnP network according to an embodiment of the present invention, a communication network for performing UPnP-based wired and wireless communication; After accessing the communication network and performing an addressing, discovery, description, and control process, when performing an eventing process, an event message is generated by generating an event message when the event occurs, and base event encoding is performed based on the data type of the generated event message. A controller for transmitting an encoded event message through the communication network using GENA; A controller for receiving an event message from the controlled device through the communication network, base 64 decoding the event message according to the data type of the received event message, and recognizing a state change of the controlled device through the decoded event message. It is preferable to make it.

한편, 본 발명의 일 실시예에 따른 UPnP 네트워크에서의 데이터 통신 방법은, 제어기 및 피제어기에서 어드레싱, 디스커버리 및 디스크립션 과정을 수행한 후, 컨트롤 과정을 수행하는 경우에, 상기 제어기에서 제어 명령 메시지를 생성하고, 생성된 제어 명령 메시지의 데이터 용량 크기에 따라 제어 명령 메시지를 MTOM 인코딩 또는 SOAP 인코딩하여 피제어기로 전송하는 단계와; 상기 피제어기에서 상기 제어기로부터 수신된 제어 명령 메시지의 인코딩 형태에 따라, 수신된 제어 명령 메시지를 MTOM 디코딩 또는 SOAP 디코딩하고, 디코딩된 제어 명령 메시지에 의거하여 서비스를 실행하는 단계를 포함하여 이루어지는 것이 바람직하다.On the other hand, in the data communication method in the UPnP network according to an embodiment of the present invention, after performing the addressing, discovery and description process in the controller and the control unit, when the control process performs a control command message in the controller Generating and transmitting MTOM-encoded or SOAP-encoded control command message according to the size of the data capacity of the generated control command message to the control unit; Preferably, the control unit includes MTOM decoding or SOAP decoding the received control command message according to the encoding type of the control command message received from the controller, and executing a service based on the decoded control command message. Do.

또한, 본 발명의 일 실시예에 따른 UPnP 네트워크에서의 데이터 통신 방법은, 제어기 및 피제어기에서 어드레싱, 디스커버리, 디스크립션 및 컨트롤 과정을 수행한 후, 이벤팅 과정을 수행하는 경우에, 상기 피제어기에서 이벤트 발생시 이벤트 메시지를 생성하여 생성된 이벤트 메시지의 데이터 유형에 따라 이벤트 메시지를 base 64 인코딩하고, 인코딩된 이벤트 메시지를 상기 제어기로 GENA를 이용하여 전송하는 단계와; 상기 제어기에서 상기 피제어기로부터 이벤트 메시지를 수신하고, 수신된 이벤트 메시지의 데이터 유형에 따라 이벤트 메시지를 base 64 디코딩하고, 디코딩된 이벤트 메시지를 통해 상기 피제어기의 상태 변화를 인식하는 단계를 포함하여 이루어지는 것이 바람직하다.In addition, the data communication method in the UPnP network according to an embodiment of the present invention, after performing the addressing, discovery, description and control process in the controller and the controller, and performs the event, Generating an event message when an event occurs, base 64 encoding the event message according to the data type of the generated event message, and transmitting the encoded event message to the controller using GENA; Receiving an event message from the controller, base 64 decoding the event message according to the data type of the received event message, and recognizing a state change of the controller through the decoded event message. It is preferable.

본 발명에 따른 UPnP 네트워크에서의 데이터 통신 시스템 및 방법에 의하면, UPnP 네트워크상에서 컴포넌트 간에 컨트롤 과정 수행시 대용량 데이터 통신이 필요한 경우에, MTOM(Message Transmission Opimization Mechanism)을 적용하여 통신 을 수행함으로써, 적은 네트워크 트래픽을 사용하면서 대용량의 데이터를 고속으로 전송할 수 있는 효과가 있다.According to the data communication system and method in the UPnP network according to the present invention, when a large amount of data communication is required when performing a control process between the components on the UPnP network, by applying the MTOM (Message Transmission Opimization Mechanism) to perform communication, While using traffic, a large amount of data can be transmitted at high speed.

또한, UPnP 네트워크상에서 컴포넌트 간에 GENA를 이용한 이벤트 메시지 통신시에는 통신하려는 이벤트 메시지가 이진 데이터인 경우에, base 64 인코딩 기법을 적용하여 이벤트 메시지를 이진 데이터화하여 전송함으로써, 이벤트 메시지 통신의 효율성을 증진시킬 수 있는 효과가 있다.In case of event message communication using GENA between components in UPnP network, when event message to be communicated is binary data, it is possible to improve the efficiency of event message communication by applying base 64 encoding technique and transmitting event message as binary data. It can be effective.

또한, UPnP 네트워크상에서 컴포넌트 간에 GENA를 이용한 이벤트 메시지 통신시, 멀티캐스트 전송 방식뿐만 아니라, 유니캐스트 전송 방식을 지원함으로써, 네트워크 트래픽, 시스템 리소스 및 보안 관리 측면에서 효율성을 증진시킬 수 있는 효과가 있다.In addition, in event message communication using GENA between components in a UPnP network, by supporting not only multicast transmission but also unicast transmission, there is an effect of increasing efficiency in terms of network traffic, system resource, and security management.

이하에서는, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 따른 UPnP 네트워크에서의 데이터 통신 시스템 및 방법에 대하여 상세하게 설명한다.Hereinafter, a data communication system and method in a UPnP network according to a preferred embodiment of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 UPnP 네트워크에서의 데이터 통신 시스템의 구성을 개략적으로 도시한 도면이다.1 is a diagram schematically illustrating a configuration of a data communication system in a UPnP network according to an embodiment of the present invention.

도 1을 참조하면, 본 발명에 따른 UPnP 네트워크에서의 데이터 통신 시스템은 제어기(10), 피제어기(20) 및 통신망(30)을 포함하여 이루어진다.Referring to FIG. 1, a data communication system in a UPnP network according to the present invention includes a controller 10, a controller 20, and a communication network 30.

제어기(10) 및 피제어기(20)는 통신망(30)에 접속하면, 각각 어드레싱, 디스커버리, 디스크립션 과정을 수행한다. 이러한, 어드레싱, 디스커버리, 디스크립션 과정에 대한 설명은 본 발명의 배경기술에 기재되어 있으므로, 그 구체적인 설명은 생략한다.When the controller 10 and the controller 20 are connected to the communication network 30, the controller 10 and the controller 20 perform addressing, discovery, and description processes, respectively. Since the description of the addressing, discovery, and description processes is described in the background of the present invention, the detailed description thereof will be omitted.

제어기(10)는 컴포넌트로서, UPnP 미들웨어를 탑재하며, 피제어기(20)를 제어한다.The controller 10 is a component, mounts UPnP middleware, and controls the controller 20.

즉, 제어기(10)는 디스크립션 과정을 통해 분석된 피제어기(20)에서 제공하는 서비스를 실행시키기 위해, 제어 명령 메시지를 생성하여 통신망(30)을 통해 피제어기(20)로 전송하고, 이를 수신한 피제어기(20)로부터의 제어 응답 메시지를 수신하여 피제어기(20)의 제어 명령 메시지 수신 여부를 인식한다.That is, the controller 10 generates a control command message and transmits the control command message to the controlled controller 20 through the communication network 30 to execute the service provided by the controlled controller 20 analyzed through the description process. By receiving the control response message from the control unit 20, it is recognized whether the control command 20 receives the control command message.

여기서, 제어기(10)는 생성된 제어 명령 메시지의 데이터 용량의 크기에 따라 제어 명령 메시지를 MTOM 인코딩 또는 SOAP 인코딩하여 피제어기(20)로 전송하되, 제어 명령 메시지의 데이터 용량 크기가 임계값 이상이면 제어 명령 메시지를 MTOM 인코딩하고, 제어 명령 메시지의 데이터 용량 크기가 임계값 미만이면 SOAP 인코딩하는 것이 바람직하다.In this case, the controller 10 transmits the control command message to the controller 20 by MTOM encoding or SOAP encoding according to the size of the data capacity of the generated control command message. It is desirable to MTOM encode the control command message and SOAP encode if the data capacity size of the control command message is below the threshold.

또한, 제어기(10)는 피제어기(20)로부터 제어 응답 메시지를 수신하여 제어 응답 메시지의 인코딩 형태에 따라 제어 응답 메시지를 MTOM 디코딩 또는 SOAP 디코딩하는 것이 바람직하다.In addition, the controller 10 preferably receives the control response message from the controller 20 and MTOM decodes or SOAP decodes the control response message according to the encoding type of the control response message.

또한, 제어기(10)는 피제어기(20)와 이벤트 메시지 송수신자 관계를 맺기 위해 피제어기(20)로 이벤트 메시지 수신자 등록 요청을 한다. In addition, the controller 10 requests an event message receiver registration to the controller 20 in order to establish an event message transceiver relationship with the controller 20.

이때, 제어기(10)는 피제어기(20)로 멀티캐스트 이벤트 메시지 수신자 또는 유니캐스트 이벤트 메시지 수신자 중 어느 하나로의 등록을 요청하는 것이 바람직 하다.At this time, the controller 10 preferably requests the controller 20 to register as either a multicast event message receiver or a unicast event message receiver.

또한, 제어기(10)는 피제어기(20)로부터 이벤트 메시지를 수신하면, 수신된 이벤트 메시지를 통해 피제어기(20)의 상태 변화를 인식한다. In addition, when the controller 10 receives an event message from the controller 20, the controller 10 recognizes a state change of the controller 20 through the received event message.

여기서, 제어기(10)는 피제어기(20)로부터 수신된 이벤트 메시지의 데이터 유형에 따라 이벤트 메시지를 base 64 디코딩하되, 이벤트 메시지의 데이터 유형이 이진 데이터인 경우에, 해당 이벤트 메시지를 base 64 디코딩하는 것이 바람직하다.Here, the controller 10 decodes the event message according to the data type of the event message received from the controller 20, and if the data type of the event message is binary data, base 64 decodes the corresponding event message. It is preferable.

한편, 피제어기(20)는 로봇 컴포넌트로서, UPnP 미들웨어를 탑재하며, 제어기(10)의 명령에 따라 서비스를 실행한다.On the other hand, the controller 20 is a robot component, is equipped with UPnP middleware, and executes the service according to the command of the controller 10.

즉, 피제어기(20)는 통신망(30)을 통해 제어기(10)로부터 제어 명령 메시지를 수신하여 제어 응답 메시지를 생성하여 통신망(30)을 통해 제어기(10)로 전송하고, 제어기(10)로부터 수신된 제어 명령 메시지에 의거하여 서비스를 실행한다.That is, the controller 20 receives a control command message from the controller 10 through the communication network 30, generates a control response message, transmits the control response message to the controller 10 through the communication network 30, and from the controller 10. Run the service based on the received control command message.

여기서, 피제어기(20)는 수신된 제어 명령 메시지의 인코딩 형태에 따라 제어 명령 메시지를 MTOM 디코딩 또는 SOAP 디코딩하는 것이 바람직하다.Here, the controller 20 preferably MTOM decodes or SOAP decodes the control command message according to the encoding type of the received control command message.

또한, 피제어기(20)는 제어기(10)로부터 제어 명령 메시지를 수신하면, 제어 응답 메시지를 생성하여 통신망(30)을 통해 제어기(10)로 전송한다.In addition, when the controller 20 receives the control command message from the controller 10, the controller 20 generates a control response message and transmits the control response message to the controller 10 through the communication network 30.

이때, 피제어기(20)는 제어 응답 메시지의 데이터 용량 크기에 따라 제어 응답 메시지를 MTOM 인코딩 또는 SOAP 인코딩하여 통신망(30)을 통해 제어기(10)로 전송하되, 제어 응답 메시지의 데이터 용량 크기가 임계값 이상이면 제어 응답 메시지를 MTOM 인코딩하고, 제어 응답 메시지의 데이터 용량 크기가 임계값 미만이면 SOAP 인코딩하는 것이 바람직하다.In this case, the control unit 20 transmits the control response message to the controller 10 through the communication network 30 by MTOM encoding or SOAP encoding according to the data capacity size of the control response message, but the data capacity size of the control response message is critical. If the value is greater than or equal to the MTOM encoding of the control response message, and if the data capacity size of the control response message is less than the threshold it is preferable to encode.

또한, 피제어기(20)는 제어기(10)로부터 이벤트 메시지 수신자 등록 요청을 받으면, 제어기(10)를 이벤트 메시지 수신자로 등록하되, 멀티캐스트 또는 유니캐스트 이벤트 메시지 수신자로 구분하여 등록한다.In addition, when the controller 20 receives an event message receiver registration request from the controller 10, the controller 20 registers the controller 10 as an event message receiver and registers the multicast or unicast event message receiver.

또한, 피제어기(20)는 이벤트 발생시 이벤트 메시지를 생성하고, 생성된 이벤트 메시지를 GENA를 이용하여 제어기(10)로 전송한다.In addition, the controller 20 generates an event message when an event occurs and transmits the generated event message to the controller 10 using GENA.

여기서, 피제어기(20)는 생성된 이벤트 메시지의 데이터 유형에 따라 이벤트 메시지를 base 64 인코딩하되, 이벤트 메시지의 데이터 유형이 이진 데이터인 경우에, 해당 이벤트 메시지를 base 64 인코딩하는 것이 바람직하다.Here, the controller 20 base-base encodes the event message according to the data type of the generated event message, but when the data type of the event message is binary data, it is preferable to base-64 encode the corresponding event message.

또한, 피제어기(20)는 생성된 이벤트 메시지가 멀티캐스트 전송 타입인지 아니면, 유니캐스트 전송 타입인지를 확인하고, 확인 결과 생성된 이벤트 메시지가 유니캐스트 전송 타입이면, 등록된 이벤트 메시지 수신자들 중 유니캐스트 이벤트 메시지 수신자로 등록된 제어기(10)로 이벤트 메시지를 유니캐스트 하고, 멀티캐스트 전송 타입이면, 등록된 이벤트 메시지 수신자들 중 멀티캐스트 이벤트 메시지 수신자로 등록된 제어기(10)들로 이벤트 메시지를 멀티캐스트 한다.In addition, the control unit 20 checks whether the generated event message is a multicast transmission type or a unicast transmission type, and if the generated event message is a unicast transmission type, the unicast among the registered event message receivers. Unicast the event message to the controller 10 registered as the cast event message receiver, and multicast the event message to the controller 10 registered as the multicast event message receiver among the registered event message receivers. Cast

한편, 통신망(30)은 다수의 제어기(10) 및 피제어기(20) 간의 UPnP 기반의 유무선 통신을 연결한다.Meanwhile, the communication network 30 connects UPnP-based wired / wireless communication between the plurality of controllers 10 and the controller 20.

도 2는 본 발명의 일 실시예에 따른 UPnP 네트워크에서의 데이터 통신 방법을 순차적으로 도시한 도면으로, 도 2를 참조하여 본 발명의 일 실시예에 따른 UPnP 네트워크에서의 데이터 통신 방법에 대하여 설명하면 다음과 같다.FIG. 2 is a diagram sequentially illustrating a data communication method in a UPnP network according to an embodiment of the present invention. Referring to FIG. 2, a data communication method in a UPnP network according to an embodiment of the present invention will be described. As follows.

먼저, 로봇을 구성하는 컴포넌트들 중 제어의 주체가 될 수 있는지 여부에 따라 구분된 제어기(10) 및 피제어기(20)는 통신망(30)에 접속하여, 어드레싱, 디스커버리, 디스크립션 과정을 순차적으로 수행한다(S200).First, the controller 10 and the controlled controller 20, which are classified according to whether they can be the subject of control among the components constituting the robot, are connected to the communication network 30 to sequentially perform addressing, discovery, and description processes. (S200).

상기한 단계 S200 이후에, 제어기(10) 및 피제어기(20)는 컨트롤 과정을 수행하게 되는데, 이때 제어기(10)는 디스크립션 과정을 통해 분석된 피제어기(20)에서 제공하는 서비스를 실행시키기 위해, 제어 명령 메시지를 생성하여 통신망(30)을 통해 피제어기(20)로 전송한다(S210).After the step S200, the controller 10 and the controller 20 performs a control process, in which the controller 10 executes a service provided by the controller 20 analyzed through the description process. The control command message is generated and transmitted to the control unit 20 through the communication network 30 (S210).

상기한 단계 S210에서 제어기(10)는 생성된 제어 명령 메시지의 데이터 용량 크기에 따라 제어 명령 메시지를 MTOM 인코딩 또는 SOAP 인코딩하여 피제어기(20)로 전송하되, 제어 명령 메시지의 데이터 용량 크기가 임계값 이상이면 제어 명령 메시지를 MTOM 인코딩하고, 제어 명령 메시지의 데이터 용량 크기가 임계값 미만이면 SOAP 인코딩하는 것이 바람직하다.In step S210, the controller 10 transmits MTOM-encoded or SOAP-encoded control command message to the controller 20 according to the data capacity size of the generated control command message, but the data capacity size of the control command message is a threshold value. If it is above, it is preferable to MTOM encode the control command message, and SOAP encode if the data capacity size of the control command message is less than the threshold.

상기한 단계 S210을 통해 제어기(10)로부터 제어 명령 메시지를 수신한 피제어기(20)는 제어 응답 메시지를 생성하여 통신망(30)을 통해 제어기(10)로 전송한다(S220).The controller 20 that receives the control command message from the controller 10 through step S210 generates a control response message and transmits the control response message to the controller 10 through the communication network 30 (S220).

상기한 단계 S220에서 피제어기(20)는 생성된 제어 응답 메시지의 데이터 용량 크기에 따라 제어 응답 메시지를 MTOM 인코딩 또는 SOAP 인코딩하여 통신망(30)을 통해 제어기(10)로 전송하되, 제어 응답 메시지의 데이터 용량 크기가 임계값 이상이면 제어 응답 메시지를 MTOM 인코딩하고, 제어 응답 메시지의 데이터 용량 크기가 임계값 미만이면 SOAP 인코딩하는 것이 바람직하다.In step S220, the control unit 20 transmits the control response message to the controller 10 through the communication network 30 by MTOM encoding or SOAP encoding the control response message according to the data capacity of the generated control response message. MTOM encoding the control response message if the data capacity size is greater than or equal to the threshold, and SOAP encoding if the data capacity size of the control response message is less than the threshold.

상기한 단계 S220을 통해 피제어기(20)로부터 제어 응답 메시지를 수신한 제어기(10)는 피제어기(20)가 제어 명령 메시지를 수신하였음을 인식한다(S230).The controller 10 that receives the control response message from the controller 20 through step S220 recognizes that the controller 20 has received the control command message (S230).

상기한 단계 S230에서 제어기(10)는 피제어기(20)로부터 수신된 제어 응답 메시지의 인코딩 형태에 따라 제어 응답 메시지를 MTOM 디코딩 또는 SOAP 디코딩하는 것이 바람직하다.In step S230, the controller 10 preferably MTOM decodes or SOAP decodes the control response message according to the encoding type of the control response message received from the controller 20.

한편, 상기한 단계 S210을 통해 제어기(10)로부터 제어 명령 메시지를 수신한 피제어기(20)는 수신된 제어 명령 메시지에 의거하여 서비스를 실행한다(S240).On the other hand, the control unit 20 receives the control command message from the controller 10 through the above step S210 performs a service based on the received control command message (S240).

상기한 단계 S240에서 피제어기(20)는 제어기(10)로부터 수신된 제어 명령 메시지의 인코딩 형태에 따라 제어 응답 메시지를 MTOM 디코딩 또는 SOAP 디코딩하는 것이 바람직하다.In step S240, the controller 20 preferably MTOM decodes or SOAP decodes the control response message according to the encoding type of the control command message received from the controller 10.

한편, 상기한 단계 S240 이후, 즉 컨트롤 과정을 수행한 이후, 피제어기(20) 및 제어기(10)는 이벤팅 과정을 수행하게 되는데, 이때 제어기(10)는 피제어기(20)와 이벤트 메시지 송수신자 관계를 맺기 위해 피제어기(20)로 이벤트 메시지 수신자 등록 요청을 한다(S250).On the other hand, after the above step S240, that is, after performing the control process, the controller 20 and the controller 10 performs an eventing process, in which the controller 10 transmits and receives an event message with the controller 20 In order to establish a relationship, the controller 20 requests an event message receiver registration (S250).

상기한 단계 S250에서 제어기(10)는 피제어기(20)로 멀티캐스트 이벤트 메시지 수신자 또는 유니캐스트 이벤트 메시지 수신자 중 어느 하나로의 등록을 요청하는 것이 바람직하다.In step S250, the controller 10 preferably requests the controller 20 to register as either a multicast event message receiver or a unicast event message receiver.

상기한 단계 S250을 통해 제어기(10)로부터 이벤트 메시지 수신자 등록 요청을 받은 피제어기(20)는 제어기(10)를 이벤트 메시지 수신자로 등록하되(S260), 멀티캐스트 또는 유니캐스트 이벤트 메시지 수신자로 구분하여 등록한다.The controller 20 receiving the event message receiver registration request from the controller 10 through the step S250 registers the controller 10 as the event message receiver (S260), and divides it into a multicast or unicast event message receiver. Register.

상기한 단계 S260 이후, 피제어기(20)는 이벤트 발생시 이벤트 메시지를 생성하고, 생성된 이벤트 메시지를 GENA를 이용하여 제어기(10)로 전송한다(S270).After the above step S260, the controller 20 generates an event message when an event occurs, and transmits the generated event message to the controller 10 using GENA (S270).

상기한 단계 S270에서 피제어기(20)는 생성된 이벤트 메시지의 데이터 유형에 따라 이벤트 메시지를 base 64 인코딩하되, 이벤트 메시지의 데이터 유형이 이진 데이터인 경우에, 해당 이벤트 메시지를 base 64 인코딩하는 것이 바람직하다.In step S270, the control unit 20 encodes the event message according to the data type of the generated event message, but if the data type of the event message is binary data, it is preferable to base-64 encode the corresponding event message. Do.

상기한 단계 S270에서 피제어기(20)는 생성된 이벤트 메시지가 멀티캐스트 전송 타입인지 아니면, 유니캐스트 전송 타입인지를 확인하고, 확인 결과 생성된 이벤트 메시지가 유니캐스트 전송 타입이면, 상기한 단계 S260을 통해 등록된 이벤트 메시지 수신자들 중 유니캐스트 이벤트 메시지 수신자로 등록된 제어기(10)로 이벤트 메시지를 유니캐스트 하고, 상기한 단계 S270에서의 확인 결과 멀티캐스트 전송 타입이면, 상기한 단계 S260을 통해 등록된 이벤트 메시지 수신자들 중 멀티캐스트 이벤트 메시지 수신자로 등록된 제어기(10)들로 이벤트 메시지를 멀티캐스트 한다.In step S270, the control unit 20 checks whether the generated event message is a multicast transmission type or a unicast transmission type, and if the event message generated as a result of the check is the unicast transmission type, step S260. Unicast the event message to the controller 10 registered as a unicast event message receiver among the event message receivers registered through the multicast transmission type. The event message is multicasted to the controllers 10 registered as multicast event message receivers.

상기한 단계 S270을 통해 피제어기(20)로부터 이벤트 메시지를 수신한 제어기(10)는 수신된 이벤트 메시지를 통해 피제어기(20)의 상태 변화를 인식한다(S280).The controller 10 that has received the event message from the controller 20 through step S270 recognizes a state change of the controller 20 through the received event message (S280).

상기한 단계 S280에서 제어기(10)는 피제어기(20)로부터 수신된 이벤트 메시지의 데이터 유형에 따라 이벤트 메시지를 base 64 디코딩하되, 이벤트 메시지의 데이터 유형이 이진 데이터인 경우에, 해당 이벤트 메시지를 base 64 디코딩하는 것이 바람직하다.In step S280, the controller 10 decodes the event message according to the data type of the event message received from the controller 20, and if the data type of the event message is binary data, bases the corresponding event message. 64 decode is preferred.

본 발명에 따른 UPnP 네트워크에서의 데이터 통신 시스템 및 방법에 의하면, UPnP 네트워크상에서 컴포넌트 간에 컨트롤 과정 수행시 대용량 데이터 통신이 필요한 경우에, MTOM(Message Transmission Opimization Mechanism)을 적용하여 통신을 수행함으로써, 적은 네트워크 트래픽을 사용하면서 대용량의 데이터를 고속으로 전송할 수 있다.According to the data communication system and method in the UPnP network according to the present invention, when a large amount of data communication is required when performing a control process between components on the UPnP network, by applying the MTOM (Message Transmission Opimization Mechanism) to perform a communication, It can transfer large amount of data at high speed while using traffic.

또한, UPnP 네트워크상에서 컴포넌트 간에 GENA를 이용한 이벤트 메시지 통신시에는 통신하려는 이벤트 메시지가 이진 데이터인 경우에, base 64 인코딩 기법을 적용하여 이벤트 메시지를 이진 데이터화하여 전송함으로써, 이벤트 메시지 통신의 효율성을 증진시킬 수 있다.In case of event message communication using GENA between components in UPnP network, when event message to be communicated is binary data, it is possible to improve the efficiency of event message communication by applying base 64 encoding technique and transmitting event message as binary data. Can be.

또한, UPnP 네트워크상에서 컴포넌트 간에 GENA를 이용한 이벤트 메시지 통신시, 멀티캐스트 전송 방식뿐만 아니라, 유니캐스트 전송 방식을 지원함으로써, 네트워크 트래픽, 시스템 리소스 및 보안 관리 측면에서 효율성을 증진시킬 수 있다.In addition, in event message communication using GENA between components in a UPnP network, not only a multicast transmission method but also a unicast transmission method can be used to increase efficiency in terms of network traffic, system resource, and security management.

도 1은 본 발명의 일 실시예에 따른 UPnP 네트워크에서의 데이터 통신 시스템의 구성을 개략적으로 도시한 도면.1 is a diagram schematically showing the configuration of a data communication system in a UPnP network according to an embodiment of the present invention.

도 2는 본 발명의 일 실시예에 따른 UPnP 네트워크에서의 데이터 통신 방법을 순차적으로 도시한 도면.2 is a diagram sequentially illustrating a data communication method in a UPnP network according to an embodiment of the present invention.

*** 도면의 주요 부분에 대한 부호의 설명 ****** Explanation of symbols for the main parts of the drawing ***

10: 제어기 20: 피제어기10: controller 20: controller

30: 통신망30: network

Claims (21)

UPnP 기반의 유무선 통신을 수행하는 통신망과;A communication network performing UPnP-based wired and wireless communication; 상기 통신망에 접속하여 어드레싱, 디스커버리 및 디스크립션 과정을 수행한 후, 컨트롤 과정을 수행하는 경우에, 제어 명령 메시지를 생성하고, 생성된 제어 명령 메시지의 데이터 용량 크기에 따라에 따라 제어 명령 메시지를 MTOM(Message Transmission Opimization Mechanism) 인코딩 또는 SOAP(Simple Object Access Protocol) 인코딩하여 상기 통신망으로 전송하는 제어기와;After accessing the communication network to perform an addressing, discovery and description process, and when performing a control process, a control command message is generated, and the control command message is generated according to the size of the data capacity of the generated control command message. A controller transmitting Message Transmission Opimization Mechanism (SOI) encoding or Simple Object Access Protocol (SOAP) encoding to the communication network; 상기 통신망을 통해 상기 제어기로부터 제어 명령 메시지를 수신하고, 수신된 제어 명령 메시지의 인코딩 형태에 따라, 수신된 제어 명령 메시지를 MTOM 디코딩 또는 SOAP 디코딩하고, 디코딩된 제어 명령 메시지에 의거하여 서비스를 실행하는 피제어기를 포함하여 이루어지는 것을 특징으로 하는 UPnP 네트워크에서의 데이터 통신 시스템.Receiving a control command message from the controller through the communication network, MTOM decoding or SOAP decoding the received control command message according to the encoding type of the received control command message, and executing a service based on the decoded control command message A data communication system in a UPnP network, characterized in that it comprises a controller. 제1항에 있어서, The method of claim 1, 상기 제어기는,The controller comprising: 상기 생성된 제어 명령 메시지의 데이터 용량 크기가 임계값 이상이면 제어 명령 메시지를 MTOM 인코딩하고, 제어 명령 메시지의 데이터 용량 크기가 임계값 미만이면 SOAP 인코딩하는 것을 특징으로 하는 UPnP 네트워크에서의 데이터 통신 시스템.MTOM encoding the control command message if the data capacity size of the generated control command message is greater than or equal to a threshold value, and performing SOAP encoding if the data capacity size of the control command message is less than the threshold value. 제1항에 있어서,The method of claim 1, 상기 피제어기는,The control unit, 상기 제어기로부터 제어 명령 메시지를 수신하면, 제어 응답 메시지를 생성하고, 생성된 제어 응답 메시지의 데이터 용량 크기에 따라, 제어 응답 메시지를 MTOM 인코딩 또는 SOAP 인코딩하여 상기 제어기로 전송하는 것을 특징으로 하는 UPnP 네트워크에서의 데이터 통신 시스템.Receiving a control command message from the controller, generates a control response message, according to the size of the data capacity of the generated control response message, the UPnP network characterized in that for transmitting the MTOM encoding or SOAP-encoded control response message to the controller Data communication system 제3항에 있어서,The method of claim 3, 상기 피제어기는,The control unit, 상기 생성된 제어 응답 메시지의 데이터 용량 크기가 임계값 이상이면, 제어 응답 메시지를 MTOM 인코딩하고, 제어 응답 메시지의 데이터 용량 크기가 임계값 미만이면 SOAP 인코딩하는 것을 특징으로 하는 UPnP 네트워크에서의 데이터 통신 시스템.MTOM encoding the control response message if the data capacity size of the generated control response message is greater than or equal to a threshold value, and performing SOAP encoding if the data capacity size of the control response message is less than the threshold value. . 제3항에 있어서,The method of claim 3, 상기 제어기는,The controller comprising: 상기 피제어기로부터 수신된 제어 응답 메시지의 인코딩 형태에 따라 수신된 제어 응답 메시지를 MTOM 디코딩 또는 SOAP 디코딩하고, 디코딩된 제어 응답 메시지를 통해 상기 피제어기가 제어 명령 메시지를 수신하였음을 인식하는 것을 특징으로 하는 UPnP 네트워크에서의 데이터 통신 시스템.MTOM decoding or SOAP decoding the received control response message according to the encoding type of the control response message received from the controller, and recognizes that the controller receives the control command message through the decoded control response message. Data communication system in the UPnP network. UPnP 기반의 유무선 통신을 수행하는 통신망과;A communication network performing UPnP-based wired and wireless communication; 상기 통신망에 접속하여 어드레싱, 디스커버리, 디스크립션 및 컨트롤 과정을 수행한 후, 이벤팅 과정을 수행하는 경우에, 이벤트 발생시 이벤트 메시지를 생성하여 생성된 이벤트 메시지의 데이터 유형에 따라 이벤트 메시지를 base 64 인코딩하고, 인코딩된 이벤트 메시지를 상기 통신망을 통해 GENA(Generic Event Notification Architecture)를 이용하여 전송하는 피제어기와;After accessing the communication network and performing an addressing, discovery, description, and control process, when performing an eventing process, an event message is generated by generating an event message when the event occurs, and base event encoding is performed based on the data type of the generated event message. A control unit for transmitting the encoded event message through the communication network using a generic event notification architecture (GENA); 상기 통신망을 통해 상기 피제어기로부터의 이벤트 메시지를 수신하고, 수신된 이벤트 메시지의 데이터 유형에 따라 이벤트 메시지를 base 64 디코딩하고, 디코딩된 이벤트 메시지를 통해 상기 피제어기의 상태 변화를 인식하는 제어기를 포함하여 이루어지는 것을 특징으로 하는 UPnP 네트워크에서의 데이터 통신 시스템.A controller for receiving an event message from the controlled device through the communication network, base 64 decoding the event message according to the data type of the received event message, and recognizing a state change of the controlled device through the decoded event message. And a data communication system in a UPnP network. 제6항에 있어서,The method of claim 6, 상기 피제어기는,The control unit, 상기 이벤트 메시지의 데이터 유형이 이진 데이터인 경우에, 상기 이벤트 메시지를 base 64 인코딩하는 것을 특징으로 하는 UPnP 네트워크에서의 데이터 통신 시스템.And when the data type of the event message is binary data, base event encoding of the event message. 제6항에 있어서,The method of claim 6, 상기 제어기는,The controller comprising: 상기 이벤트 메시지의 데이터 유형이 이진 데이터인 경우에, 상기 이벤트 메시지를 base 64 디코딩하는 것을 특징으로 하는 UPnP 네트워크에서의 데이터 통신 시스템.And when the data type of the event message is binary data, base-64 decoding the event message. 제6항에 있어서,The method of claim 6, 상기 제어기는,The controller comprising: 상기 피제어기로 멀티캐스트 이벤트 메시지 수신자 또는 유니캐스트 이벤트 메시지 수신자 중 어느 하나로의 등록을 요청하는 것을 특징으로 하는 UPnP 네트워크에서의 데이터 통신 시스템.Requesting registration by the controller as either a multicast event message receiver or a unicast event message receiver. 제9항에 있어서,10. The method of claim 9, 상기 피제어기는,The control unit, 상기 제어기의 요청에 따라 상기 제어기를 멀티캐스트 또는 유니캐스트 이벤트 메시지 수신자로 구분하여 등록하는 단계를 포함하여 이루어지는 것을 특징으로 하는 UPnP 네트워크에서의 데이터 통신 시스템.And registering the controller as a multicast or unicast event message receiver according to a request of the controller. 제10항에 있어서,The method of claim 10, 상기 피제어기는,The control unit, 상기 피제어기에서 이벤트 발생시 생성된 이벤트 메시지가 멀티캐스트 전송 타입인지 아니면, 유니캐스트 전송 타입인지를 확인하고, 상기 확인 결과 이벤트 메시지가 유니캐스트 전송 타입이면, 상기 등록된 이벤트 메시지 수신자들 중 유니캐스트 이벤트 메시지 수신자로 등록된 제어기로 이벤트 메시지를 유니캐스트 하는 한편, 상기 확인 결과 이벤트 메시지가 멀티캐스트 전송 타입이면, 상기 등록된 이벤트 메시지 수신자들 중 멀티캐스트 이벤트 메시지 수신자로 등록된 제어기들로 이벤트 메시지를 멀티캐스트 하는 것을 특징으로 하는 UPnP 네트워크에서의 데이터 통신 시스템.The controller determines whether the event message generated when the event occurs is a multicast transmission type or a unicast transmission type. If the event message is a unicast transmission type, the unicast event among the registered event message receivers is determined. If the event message is a multicast transmission type, the event message is unicast to a controller registered as a message receiver, and if the event message is a multicast transmission type, the event message is multiplied to the controllers registered as multicast event message receivers among the registered event message receivers. Data communication system in a UPnP network, characterized in that the cast. 제어기 및 피제어기에서 어드레싱, 디스커버리 및 디스크립션 과정을 수행한 후, 컨트롤 과정을 수행하는 경우에, 상기 제어기에서 제어 명령 메시지를 생성하고, 생성된 제어 명령 메시지의 데이터 용량 크기에 따라 제어 명령 메시지를 MTOM(Message Transmission Opimization Mechanism) 인코딩 또는 SOAP(Simple Object Access Protocol) 인코딩하여 피제어기로 전송하는 단계와;After performing the addressing, discovery, and description processes in the controller and the controller, the controller generates a control command message and performs a control command message according to the data capacity of the generated control command message. Transmitting (Message Transmission Opimization Mechanism) encoding or Simple Object Access Protocol (SOAP) encoding to the control unit; 상기 피제어기에서 상기 제어기로부터 수신된 제어 명령 메시지의 인코딩 형태에 따라, 수신된 제어 명령 메시지를 MTOM 디코딩 또는 SOAP 디코딩하고, 디코딩된 제어 명령 메시지에 의거하여 서비스를 실행하는 단계를 포함하여 이루어지는 것을 특징으로 하는 UPnP 네트워크에서의 데이터 통신 방법.MTOM decoding or SOAP decoding the received control command message according to the encoding type of the control command message received from the controller, and executing a service based on the decoded control command message in the controlled device. The data communication method in UPnP network. 제12항에 있어서,The method of claim 12, 상기 피제어기로 전송하는 단계는,The step of transmitting to the controller, 상기 제어기에서 생성된 제어 명령 메시지의 데이터 용량 크기가 임계값 이상이면 제어 명령 메시지를 MTOM 인코딩하고, 제어 명령 메시지의 데이터 용량 크기가 임계값 미만이면 SOAP 인코딩하는 것을 특징으로 하는 UPnP 네트워크에서의 데이터 통신 방법.MTOM encoding the control command message if the data capacity size of the control command message generated in the controller is greater than or equal to a threshold value, and performing SOAP encoding if the data capacity size of the control command message is less than the threshold value. Way. 제12항에 있어서,The method of claim 12, 상기 피제어기에서 상기 제어기로부터 제어 명령 메시지를 수신하면, 제어 응답 메시지를 생성하고, 생성된 제어 응답 메시지의 데이터 용량 크기에 따라 제어 응답 메시지를 MTOM 인코딩 또는 SOAP 인코딩하여 상기 제어기로 전송하는 단계와;Generating a control response message when the controller receives the control command message from the controller, and transmitting the control response message to the controller by MTOM encoding or SOAP encoding according to the data capacity of the generated control response message; 상기 제어기에서 상기 피제어기로부터 수신된 제어 응답 메시지의 인코딩 형태에 따라, 수신된 제어 응답 메시지를 MTOM 디코딩 또는 SOAP 디코딩하고, 디코딩된 제어 응답 메시지를 통해 상기 피제어기가 제어 명령 메시지를 수신하였음을 인식하는 단계를 더 포함하여 이루어지는 것을 특징으로 하는 UPnP 네트워크에서의 데이터 통신 방법.The controller may MTMT decode or SOAP decode the received control response message according to the encoding type of the control response message received from the controller, and recognize that the controller receives the control command message through the decoded control response message. The data communication method in the UPnP network, characterized in that it further comprises the step of. 제14항에 있어서,The method of claim 14, 상기 제어기로 전송하는 단계는,The step of transmitting to the controller, 상기 피제어기에서 생성된 제어 응답 메시지의 데이터 용량 크기가 임계값 이상이면 제어 응답 메시지를 MTOM 인코딩하고, 제어 응답 메시지의 데이터 용량 크기가 임계값 미만이면 SOAP 인코딩하는 것을 특징으로 하는 UPnP 네트워크에서의 데이터 통신 방법.MTOM encoding the control response message if the data capacity size of the control response message generated by the controller is greater than or equal to a threshold value, and performing SOAP encoding if the data capacity size of the control response message is less than the threshold value. Communication method. 제어기 및 피제어기에서 어드레싱, 디스커버리, 디스크립션 및 컨트롤 과정을 수행한 후, 이벤팅 과정을 수행하는 경우에, 상기 피제어기에서 이벤트 발생시 이벤트 메시지를 생성하여 생성된 이벤트 메시지의 데이터 유형에 따라 이벤트 메시지를 base 64 인코딩하고, 인코딩된 이벤트 메시지를 상기 제어기로 GENA(Generic Event Notification Archictecture)를 이용하여 전송하는 단계와;After performing the addressing, discovery, description, and control processes in the controller and the controller, when the event is performed, the controller generates an event message when an event occurs and generates an event message according to the data type of the generated event message. base 64 encoding, and transmitting the encoded event message to the controller using a generic event notification architecture (GENA); 상기 제어기에서 상기 피제어기로부터 이벤트 메시지를 수신하고, 수신된 이벤트 메시지의 데이터 유형에 따라 이벤트 메시지를 base 64 디코딩하고, 디코딩된 이벤트 메시지를 통해 상기 피제어기의 상태 변화를 인식하는 단계를 포함하여 이루어지는 것을 특징으로 하는 UPnP 네트워크에서의 데이터 통신 방법.Receiving an event message from the controller, base 64 decoding the event message according to the data type of the received event message, and recognizing a state change of the controller through the decoded event message. Data communication method in the UPnP network, characterized in that. 제16항에 있어서,The method of claim 16, 상기 제어기로 GENA를 이용하여 전송하는 단계는,Transmitting using the GENA to the controller, 상기 피제어기에서 상기 이벤트 메시지의 데이터 유형이 이진 데이터인 경우에, 상기 이벤트 메시지를 base 64 인코딩하는 것을 특징으로 하는 UPnP 네트워크에서의 데이터 통신 방법.And when the data type of the event message is binary data in the controller, base event-based encoding of the event message. 제16항에 있어서,The method of claim 16, 상기 피제어기의 상태 변화를 인식하는 단계는,Recognizing a change in the state of the controller, 상기 제어기에서 상기 이벤트 메시지의 데이터 유형이 이진 데이터인 경우에, 상기 이벤트 메시지를 base 64 디코딩하는 것을 특징으로 하는 UPnP 네트워크 에서의 데이터 통신 방법.And if the data type of the event message in the controller is binary data, base event decoding of the event message. 제16항에 있어서,The method of claim 16, 상기 제어기에서 상기 피제어기로 멀티캐스트 이벤트 메시지 수신자 또는 유니캐스트 이벤트 메시지 수신자 중 어느 하나로의 등록을 요청하는 단계와;Requesting registration from the controller as either a multicast event message receiver or a unicast event message receiver from the controller; 상기 피제어기에서 상기 제어기의 요청에 따라 상기 제어기를 멀티캐스트 또는 유니캐스트 이벤트 메시지 수신자로 구분하여 등록하는 단계를 포함하여 이루어지는 것을 특징으로 하는 UPnP 네트워크에서의 데이터 통신 방법.And registering the controller as a multicast or unicast event message receiver according to a request of the controller. 제19항에 있어서,The method of claim 19, 상기 제어기로 GENA를 이용하여 전송하는 단계는,Transmitting using the GENA to the controller, 상기 피제어기에서 이벤트 발생시 생성된 이벤트 메시지가 멀티캐스트 전송 타입인지 아니면, 유니캐스트 전송 타입인지를 확인하는 단계와;Determining whether an event message generated when an event occurs in the controller is a multicast transmission type or a unicast transmission type; 상기 확인 결과 이벤트 메시지가 유니캐스트 전송 타입이면, 상기 등록된 이벤트 메시지 수신자들 중 유니캐스트 이벤트 메시지 수신자로 등록된 제어기로 이벤트 메시지를 유니캐스트 하는 단계를 포함하여 이루어지는 것을 특징으로 하는 UPnP 네트워크에서의 데이터 통신 방법.And if the event message is a unicast transmission type, unicasting the event message to a controller registered as a unicast event message receiver among the registered event message receivers. Communication method. 제20항에 있어서,The method of claim 20, 상기 확인 결과 이벤트 메시지가 멀티캐스트 전송 타입이면, 상기 등록된 이벤트 메시지 수신자들 중 멀티캐스트 이벤트 메시지 수신자로 등록된 제어기들로 이벤트 메시지를 멀티캐스트 하는 단계를 더 포함하여 이루어지는 것을 특징으로 하는 UPnP 네트워크에서의 데이터 통신 방법.In the UPnP network, if the event message is a multicast transmission type, the method further comprises multicasting the event message to controllers registered as multicast event message receivers among the registered event message receivers. Data communication method.
KR1020080092926A 2008-09-22 2008-09-22 Data communication system and method in universal plug and play network KR20100033861A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080092926A KR20100033861A (en) 2008-09-22 2008-09-22 Data communication system and method in universal plug and play network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080092926A KR20100033861A (en) 2008-09-22 2008-09-22 Data communication system and method in universal plug and play network

Publications (1)

Publication Number Publication Date
KR20100033861A true KR20100033861A (en) 2010-03-31

Family

ID=42182633

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080092926A KR20100033861A (en) 2008-09-22 2008-09-22 Data communication system and method in universal plug and play network

Country Status (1)

Country Link
KR (1) KR20100033861A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120324046A1 (en) * 2011-06-17 2012-12-20 Samsung Electronics Co., Ltd. APPARATUS AND METHOD FOR EXCHANGING DATA BETWEEN UPnP BASED DEVICES

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120324046A1 (en) * 2011-06-17 2012-12-20 Samsung Electronics Co., Ltd. APPARATUS AND METHOD FOR EXCHANGING DATA BETWEEN UPnP BASED DEVICES
WO2012173444A2 (en) * 2011-06-17 2012-12-20 Samsung Electronics Co., Ltd. Apparatus and method for exchanging data between upnp based devices
WO2012173444A3 (en) * 2011-06-17 2013-03-28 Samsung Electronics Co., Ltd. Apparatus and method for exchanging data between upnp based devices
US9135209B2 (en) 2011-06-17 2015-09-15 Samsung Electronics Co., Ltd Apparatus and method for exchanging data between UPnP based devices

Similar Documents

Publication Publication Date Title
US9135209B2 (en) Apparatus and method for exchanging data between UPnP based devices
US20040205172A1 (en) Control point server system and method thereof enabling efficient access to home network devices
KR100796865B1 (en) Mobile Terminal, System and Method for connecting Network by using the same
US8060588B2 (en) Home network apparatus and system for cooperative work service and method thereof
EP2840741B1 (en) Method and apparatus for using service of home network device based on remote access
CN101184063B (en) Method, device and system for controlling non-universal plug-and-play UPnP equipment
JP2004334792A (en) Network service system, service vicarious execution processing method, storage medium storing computer-readable program, and program
CN110995647A (en) Protocol conversion method, device, equipment, storage medium and system
KR101898492B1 (en) Electronic device and method for controlling electronic device
US20050099982A1 (en) Proxy device and method for controlling devices in a domain
KR20120066979A (en) Wireless local area communication system
WO2003001744A1 (en) Information processing apparatus and method
KR20100033861A (en) Data communication system and method in universal plug and play network
KR20070042001A (en) Method of acquiring upnp device/service state information and controller therefor, and method of providing upnp device/service state information and controlled device therefor
JP4527523B2 (en) Server selection method, server selection method, server, and client terminal
KR102435756B1 (en) Device group control system and method for controlling the same
CN114679354A (en) Gateway device, bridging method and device, and storage medium
JP2013123126A (en) Dlna compatible device and method of searching the same
KR100702750B1 (en) Method and apparatus for preventing action errors caused from co-existence of low-power supporting devices and non-supporting devices
JP5940566B2 (en) Network system, constant connection method, server, electronic device, program
KR101013836B1 (en) Data Communication System and Method Using IP Matching in Universal Plug and Play Network
KR100513288B1 (en) System and method for accessing to home network public network
JP4482011B2 (en) COMMUNICATION DEVICE, COMMUNICATION SYSTEM, AND COMMUNICATION METHOD
KR100600410B1 (en) Method for parallel processing functions using networking technology
KR100621075B1 (en) Device for providing service between private networks using internet gateway device and method thereof

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application