KR20040066337A - Control point function destribution system on universal plug and play network - Google Patents

Control point function destribution system on universal plug and play network Download PDF

Info

Publication number
KR20040066337A
KR20040066337A KR1020030003369A KR20030003369A KR20040066337A KR 20040066337 A KR20040066337 A KR 20040066337A KR 1020030003369 A KR1020030003369 A KR 1020030003369A KR 20030003369 A KR20030003369 A KR 20030003369A KR 20040066337 A KR20040066337 A KR 20040066337A
Authority
KR
South Korea
Prior art keywords
control point
upnp
remote control
home agent
remote
Prior art date
Application number
KR1020030003369A
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 KR1020030003369A priority Critical patent/KR20040066337A/en
Publication of KR20040066337A publication Critical patent/KR20040066337A/en

Links

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/2803Home automation networks
    • H04L12/2816Controlling appliance services of a home automation network by calling their functionalities
    • H04L12/2818Controlling appliance services of a home automation network by calling their functionalities from a device located outside both the home and the home network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services

Abstract

PURPOSE: A CONTROL POINT FUNCTION DISTRIBUTION SYSTEM ON UNIVERSAL PLUG AND PLAY NETWORK is provided to perform easily an accessing process to a home network by adding a WAP gateway function to an outside of a home agent when a remote terminal has a WAP stack. CONSTITUTION: A control point function distribution system on universal plug and play network includes a home agent, a remote control point, and a WAP gateway. The home agent(310) is connected to a HTTP-based UPnP device by using a multicast method. The remote control point(320) is used for exchanging a multicast message of the home agent by using an UPnP stack and a WAP protocol. The WAP gateway(330) is located between the home agent and the remote control point in order to perform a converting process between a HTTP/TCP/IP protocol and a WSP*/WTP/WDP protocol, and UPnp is operated on TCP/IP as well as on a WAP stack.

Description

유피엔피(UPnP) 네트워크 상의 컨트롤 포인트 기능 분산 시스템{CONTROL POINT FUNCTION DESTRIBUTION SYSTEM ON UNIVERSAL PLUG AND PLAY NETWORK}CONTROL POINT FUNCTION DESTRIBUTION SYSTEM ON UNIVERSAL PLUG AND PLAY NETWORK}

본 발명은 유피엔피(Universal Plug and Play, 이하 UPnP라 약칭함) 네트워크에 관한 것으로 특히, 컨트롤 포인트 기능 분산 시스템에 관한 것이다.The present invention relates to a universal plug and play (hereinafter abbreviated as UPnP) network, and more particularly to a distributed control point function system.

UPnP는 여러 기업체들이 포럼(http://www.upnp.org)을 구성하여 만들고 있는 홈 네트워크 산업 표준이다.UPnP is a home network industry standard that many companies have created by creating a forum (http://www.upnp.org).

UPnP 네트워크는 디바이스를 제어하는 컨트롤 포인트(CP)와 서비스를 제공해주는 디바이스(device) 들로 이루어져 있다. 사용자는 CP를 통하여 각종 디바이스들을 찾아내고(discovery, description), 제어(control)하며 모니터(event)도 할 수 있다.The UPnP network consists of control points (CPs) that control devices and devices that provide services. The user may discover, describe, control, and monitor various devices through the CP.

한편, 이동통신 서비스의 보급이 보편화됨에 따라 이동통신 무선 단말을 통해 집안의 장비들을 제어하고 상태를 모니터링할 수 있는 홈 네트워크 원격 접속 서비스의 필요성이 대두되고 있다.On the other hand, as the popularization of mobile communication services is increasing the need for a home network remote access service that can control the equipment in the home and monitor the status through the mobile communication wireless terminal.

UPnP 홈 네트워크의 경우 CP 기능을 분산함으로써 무선 단말을 이용한 원격지 홈 접속 서비스가 가능하다.In the case of the UPnP home network, remote home access service using a wireless terminal is possible by distributing CP functions.

도1은 종래 기술을 위한 UPnP 컨트롤 포인트의 구성을 보인 블록도로서 이에 도시한 바와 같이, UPnP 컨트롤 포인트의 기능을 홈 에이전트(HA)(110)와 원격 컨트롤 포인트(120)로 분산함에 있어서, UPnP 컨트롤 포인트의 일부 기능을 포함하며 홈네트워크(100) 내의 UPnP 디바이스들과 통신하면서 UPnP 프로토콜을 처리하는 홈 에이전트(110)와, UPnP 컨트롤 포인트의 일부 기능을 포함하여 원격 단말에 구비되는 원격 콘트롤 포인트(120)와, 원격 단말에 구비되어 사용자에게 인터페이스를 제공하는 유저 인터페이스부(121)가 구비되어 구성된다.1 is a block diagram showing a configuration of a UPnP control point for the prior art. As shown in FIG. 1, UPnP in distributing a function of a UPnP control point to a home agent (HA) 110 and a remote control point 120 is shown. The home agent 110 includes some functions of the control point and communicates with UPnP devices in the home network 100 to process the UPnP protocol, and a remote control point provided in the remote terminal including some functions of the UPnP control point. 120 and a user interface unit 121 provided in a remote terminal to provide an interface to a user.

이와같은 종래 기술에 대한 동작과정을 설명하면 다음과 같다.Referring to the operation of the prior art as follows.

사용자가 원격지에 있는 경우 홈 에이전트(110)에서의 UPnP 프로토콜 처리에 있어서 디바이스 찾기와 이벤팅의 일부는 IP 멀티캐스트를 사용하기 때문에 로컬 홈네트워크 내부에서 처리하는 것이 바람직하다.In the UPnP protocol processing in the home agent 110 when the user is remote, some of device discovery and eventing use IP multicast, so it is preferable to process the service within the local home network.

또한, 유저 인터페이스 출력은 반드시 원격 단말에서 이루어져야 한다.In addition, user interface output must be made at the remote terminal.

따라서, 이를 가능하게 하기 위하여 컨트롤 포인트의 기능을 분산하여 홈네트워크 안에 있는 홈에이전트(HA)(110)와 홈네트워크(100) 외부에 있는 원격 컨트롤 포인트(120)로 UPnP 기능을 적절하게 분산하고 이를 secure channel을 이용하여 일대일로 연결한다.Therefore, in order to enable this, the function of the control point is distributed, and UPnP function is properly distributed to the home agent (HA) 110 in the home network and the remote control point 120 outside the home network 100. One to one connection using a secure channel.

따라서, 도1과 같이 컨트롤 포인트(CP)의 기능을 홈에이전트(HA)(110)와 원격 컨트롤 포인트(120)로 분산한다.Therefore, as shown in FIG. 1, the function of the control point CP is distributed to the home agent HA 110 and the remote control point 120.

UPnP 이벤팅은 GENA를 사용함에 있어서, IP 유니캐스트와 IP 멀티캐스트를 모두 이용한다.UPnP eventing uses both GE Unicast and IP Multicast in using GENA.

IP 유니캐스트를 이용한 이벤팅의 경우에도 이벤팅 메시지를 원격지 컨트롤 포인트까지 직접 보내지 않고 중간에 홈에이전트가 받아서 적절히 조정(moderation)하여 보내주거나 원격지 컨트롤 포인트가 홈에이전트가 가지고 있는 이벤트 메시지를 폴링해서 얻어 가도록 구성할 수 있다.In case of eventing using IP unicast, the eventing message is received by the home agent in the middle without being sent directly to the remote control point, and the remote control point is obtained by polling the event message of the home agent. Can be configured to go.

이는 이벤트 메시지가 자주 발생 되는 경우에 유용하다.This is useful when event messages occur frequently.

UPnP 프로토콜 스택은 IP, UDP, TCP 등의 기본적인 인터넷 프로토콜들과, HTTP, HTTPU, HTTPMU, SSDP(Simple Service Discovery Protocol), GENA, SOAP(Simple Object Access Protocol) 등의 UPnP 디바이스 아키텍쳐에서 정의된 부분, 각 장비의 종류와 제조회사에 따라 특화 되어 정의된 부분으로 구성되어있다.The UPnP protocol stack is defined in basic Internet protocols such as IP, UDP, TCP, and UPnP device architectures such as HTTP, HTTPU, HTTPMU, Simple Service Discovery Protocol (SSDP), GENA, and Simple Object Access Protocol (SOAP). It is composed of parts that are defined according to each equipment type and manufacturer.

따라서, 홈에이전트(HA)(110)와 원격 컨트롤 포인트(120)는 각각 디바이스 아키텍쳐에 정의되어 있는 부분을 통해 UPnP 디바이스들의 기본적인 서비스를 받을 수 있다.Accordingly, the home agent (HA) 110 and the remote control point 120 may each receive basic services of UPnP devices through portions defined in the device architecture.

그러나, 각 장비별, 제조자 별로 특화되어진 기능을 사용하기 위해서는 UPnP 디바이스 아키텍처에서 정의하는 UPnP 서비스(UPnP API)만으로는 부족하다.However, the UPnP service (UPnP API) defined in the UPnP device architecture is not sufficient to use functions specialized for each device and manufacturer.

따라서, 컨트롤 포인트(CP)를 구성함에 있어서, UPnP 디바이스를 특정하거나, UPnP 판매자로 특정한 기능은 따로 분리하여 컴포넌트로 구성함으로써 필요할 때 마다 설치하여 사용할 수 있도록 한다.Therefore, in configuring the control point (CP), by specifying a UPnP device, or a specific function as a UPnP vendor separately configured as a component to be installed and used whenever necessary.

이렇게 하면 서로 다른 각각의 디바이스에 최적화된 컨트롤 포인트 기능을 구현하면서도 단말의 저장공간을 최소한으로만 사용할 수 있다는 장점이 있다.This has the advantage of minimizing the storage space of the terminal while implementing control point functions optimized for each different device.

도2는 원격 단말이 TCP/IP, HTTP 스택 대신 WAP 스택(221)을 가지고 있는 경우 UPnP 컨트롤 포인트의 분산 구조를 보인 예시도이다.Figure 2 is an exemplary view showing a distributed structure of the UPnP control point when the remote terminal has a WAP stack 221 instead of the TCP / IP, HTTP stack.

홈에이전트(110)는 SSDP와 GENA의 일부 IP 멀티캐스트를 이용하는 기능과 WML 버전으로 정의된 SOAP과 GENA 메시지를 기존 XML SOAP, GENA 메시지로 변환하여 HTTP위에 실어주는 WAP 게이트웨이 기능(211)을 수행한다. 그 외의 나머지 기능은 원격 컨트롤 포인트(120)가 수행하게 된다.The home agent 110 performs a function using some IP multicast of SSDP and GENA and a WAP gateway function 211 converting SOAP and GENA messages defined in the WML version into existing XML SOAP and GENA messages and loading them on HTTP. . The rest of the functions are performed by the remote control point 120.

이때, 원격 단말은 단말에 TCP/IP, HTTP 프로토콜 스택이 있는 경우와 동일한 UPnP API를 지원하기 때문에 단말과 WAP폰 간의 어플리케이션을 공유하는 것이 가능하다.In this case, since the remote terminal supports the same UPnP API as when the terminal has a TCP / IP and HTTP protocol stack, it is possible to share an application between the terminal and the WAP phone.

이와같이 원격 단말이 WAP 스택을 가진 경우에 대한 동작 과정을 설명하면 다음과 같다.As described above, the operation process for the case where the remote terminal has the WAP stack is as follows.

먼저, 홈에이전트(110)는 UPnP 디바이스와 UPnP 찾기 과정을 거쳐서 홈네트워크 안에 있는 디바이스들을 발견하고 관련 정보들을 저장해 둔다.First, the home agent 110 discovers devices in the home network through the UPnP device and UPnP search process and stores related information.

이후, 원격 컨트롤 포인트(120)가 홈에이전트(110)에 연결되면 홈에이전트(110)는 저장한 정보를 원격 컨트롤 포인트(120)로 전달해 준다.Then, when the remote control point 120 is connected to the home agent 110, the home agent 110 transmits the stored information to the remote control point 120.

이후, 원격 컨트롤 포인트(120)는 홈에이전트(110)로부터 받은 디바이스 목록을 바탕으로 제어하기 원하는 디바이스의 프리젠테이션 페이지를 홈에이전트(110)로 요청한다.Thereafter, the remote control point 120 requests the home agent 110 for a presentation page of a device to be controlled based on the device list received from the home agent 110.

이때, 홈에이전트(110)는 디바이스에 프리젠테이션 페이지를 요청하고 HTML 페이지를 받아와서 WML 문서로 변환하여 원격 컨트롤 포인트(120)로 전달한다.In this case, the home agent 110 requests a presentation page from the device, receives an HTML page, converts it into a WML document, and transmits the converted HTML document to the remote control point 120.

상기 원격 컨트롤 포인트(120)가 디바이스의 이벤트 메시지를 수신하기 원하는 경우 이벤트 가입 요청을 홈에이전트(110)로 전달한다.When the remote control point 120 wants to receive an event message of the device, the remote control point 120 transmits an event subscription request to the home agent 110.

이때, 홈에이전트(110)는 UPnP 이벤트 가입 요청을 해당 디바이스에 전달하고 디바이스가 전송해주는 이벤트 메시지를 받는다.At this time, the home agent 110 transmits a UPnP event subscription request to the corresponding device and receives an event message transmitted by the device.

이후, 홈에이전트(110)는 받은 메시지를 요약 하여 적당한 간격으로 원격 컨트롤 포인트(120)로 전달한다.Then, the home agent 110 summarizes the received message and delivers it to the remote control point 120 at appropriate intervals.

이때, 원격 컨트롤 포인트(120)가 디바이스를 제어하고자 하는 경우 WML 버전의 SOAP 메시지를 구성하여 홈에이전트(110)에 전달하고 상기 홈에이전트(110)는 이 메시지를 SOAP 메시지로 변환하여 디바이스에 요청한다.In this case, when the remote control point 120 wants to control the device, a WML version of the SOAP message is configured and delivered to the home agent 110, and the home agent 110 converts the message into a SOAP message and requests the device. .

이에 따라, 디바이스가 응답메시지를 홈에이전트(110)로 보내면 홈에이전트(110)는 해당 응답 메시지를 WML 포맷으로 변환하여 원격 컨트롤 포인트(120)로 전송한다.Accordingly, when the device sends a response message to the home agent 110, the home agent 110 converts the response message into a WML format and transmits the response message to the remote control point 120.

또한, 종래 기술에서 원격 UPnP 컨트롤 포인트의 기능을 도2의 예시도와 같이 분산하는 경우를 예를 들어 설명하였으나, 홈 에이전트(110)와 원격 컨트롤 포인트(120) 중 어디에 더 많은 기능을 분산하는가에 의해 여러 형태로 구성할 수 있다. 이는 무선 단말의 기능, 사용자 취향, 네트워크 상태 등에 따라 유연하게 구성할 수 있음을 의미하는 것이다.In addition, in the prior art, the case of distributing the functions of the remote UPnP control point as illustrated in FIG. 2 is described as an example. However, by distributing more functions among the home agent 110 and the remote control point 120, It can be configured in various forms. This means that it can be flexibly configured according to the function of the wireless terminal, user preferences, network conditions, and the like.

그러나, 현재 홈 에이전트와 원격 CP로 UPnP 기능을 분산함에 있어서, 무선 단말의 기능, 사용자의 취향, 네트워크 상태 등에 따라 여러 형태로 유연하게 구성할 수 있다고 언급되어 있지만, 종래에는 각각의 형태가 구체적으로 어떻게 구성되는지에 대해 정의되어 있지 않다.However, it is currently mentioned that in the distribution of UPnP functions between a home agent and a remote CP, it can be flexibly configured in various forms according to the function of the wireless terminal, the user's taste, the network state, etc. It is not defined how it is constructed.

따라서, 본 발명은 종래의 문제점을 개선하기 위하여 원격 단말에 탑재되는 원격 컨트롤 포인트에 다수의 UPnP 기능을 분산함에 있어서, 원격 단말이 WAP 스택을 구비하는 경우 홈 에이전트 외부에 WAP 게이트웨이 기능을 구비하도록 함으로써 홈 네트워크 외부에서 효과적으로 홈 네트워크 접근이 가능하도록 창안한 유피엔피(UPnP) 네트워크 상의 컨트롤 포인트 기능 분산 시스템을 제공함을 목적으로 한다.Accordingly, the present invention is to distribute a plurality of UPnP functions to a remote control point mounted on a remote terminal to improve the conventional problem, by having a WAP gateway function outside the home agent when the remote terminal has a WAP stack It aims to provide a distributed control point function system on the UPnP network, which is designed to enable effective home network access from outside the home network.

즉, 본 발명은 WAP 스택을 구비한 원격 단말에 다수의 UPnP 기능을 분산하여 원격 컨트롤 포인트를 구현함에 있어서, 홈 네트워크 외부의 공중망에서 UPnP 메시지 교환이 가능하도록 하고 아울러 홈 네트워크 상의 UPnP 디바이스와 공중망 상의 원격 컨트롤 포인트에 존재하는 애플리케이션에서 인식할 수 있도록 구현함으로써 원격지의 이동 단말에서 홈 네트워크에 효과적으로 접근할 수 있도록 하는 것이다.That is, the present invention is to implement a remote control point by distributing a plurality of UPnP functions to a remote terminal having a WAP stack, to enable the exchange of UPnP messages in the public network outside the home network and also to the UPnP device and the public network on the home network By making it recognizable by the application in the remote control point, the remote mobile terminal can effectively access the home network.

도1은 종래 기술에서의 컨트롤 포인트의 구성도.1 is a block diagram of a control point in the prior art.

도2는 도1에 적용되는 프로토콜 스택의 구조도.2 is a structural diagram of a protocol stack applied to FIG.

도3은 본 발명의 실시예에서 프로토콜 관계를 보인 예시도.3 is an exemplary view showing a protocol relationship in an embodiment of the present invention.

도4는 본 발명의 실시예에서 WAP 게이트웨이의 IP 주소와 포트의 대응 관계를 보인 예시도.4 is an exemplary view showing a correspondence relationship between an IP address and a port of a WAP gateway in an embodiment of the present invention.

도5는 본 발명의 실시예를 위한 컨트롤 포인트 기능 분산 시스템의 구성도.5 is a block diagram of a control point function distribution system for an embodiment of the present invention.

도6은 본 발명의 실시예에서 홈 에이전트의 동작 순서도.6 is a flowchart of operation of a home agent in an embodiment of the present invention.

도7은 본 발명의 실시예에서 원격 컨트롤 포인트의 동작 순서도.7 is an operational flowchart of a remote control point in an embodiment of the invention.

도8은 도6에서 홈 에이전트의 패킷 변환을 위한 동작 순서도.8 is an operation flowchart for packet conversion of a home agent in FIG.

도9는 도6에서 홈 에이전트의 원격 컨트롤 포인트와의 접속 과정을 보인 동작 순서도.FIG. 9 is a flowchart illustrating a connection process with a remote control point of a home agent in FIG. 6; FIG.

도10은 도7에서 원격 컨트롤 포인트의 패킷 변환 과정을 보인 동작 순서도.FIG. 10 is a flowchart illustrating a packet conversion process of a remote control point in FIG. 7; FIG.

도11은 도7에서 원격 CP 프로토콜 처리 과정을 보인 동작 순서도.FIG. 11 is a flowchart illustrating a process of processing a remote CP protocol in FIG. 7; FIG.

도12는 본 발명의 실시예에서 UPnP 디바이스의 주소 변환 과정을 보인 신호 흐름도.12 is a signal flow diagram illustrating an address translation process of a UPnP device in an embodiment of the present invention.

도13은 본 발명의 실시예에서 원격 컨트롤 포인트의 주소 변환을 보인 신호 흐름도.Figure 13 is a signal flow diagram illustrating the address translation of a remote control point in an embodiment of the present invention.

도14는 본 발명의 실시예에서 홈 에이전트에서의 멀티캐스트 메시지 변환 과정을 보인 신호 흐름도.14 is a signal flow diagram illustrating a multicast message conversion procedure in a home agent in an embodiment of the present invention.

도15는 본 발명의 실시예에서 홈 에이전트로의 멀티캐스트 메시지 변환 과정을 보인 신호 흐름도.15 is a signal flow diagram illustrating a multicast message conversion process to a home agent in an embodiment of the present invention.

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

310 : 홈 에이전트310: Home Agent

311,321 : 멀티캐스트/유니캐스트 변환기311,321: Multicast / Unicast Converter

312 : 네트워크 주소 변환기(NAT) 313,323 : 원격 CP 프로토콜 처리부312: network address translator (NAT) 313,323: remote CP protocol processing unit

314,324 : 데이터 저장부 320 : 원격 컨트롤 포인트314,324: data storage 320: remote control point

322 : 미디어 필터322 media filter

1. 본 발명은 상기의 목적을 달성하기 위하여 홈 에이전트와 원격 단말에 UPnP 기능을 분산하여 공중망에서 UPnP 메시지 교환이 가능하도록 구성함에 있어서, 가정 내 HTTP 기반의 UPnP 디바이스와 멀티캐스트 방식으로 통신하는 홈 에이전트와, HTTP/TCP/IP 프로토콜과 WSP*/WTP/WDP 프로토콜 간의 변환을 수행하는 WAP 게이트웨이와, UPnP 스택과 WAP 프로토콜 처리에 의해 상기 WAP 게이트웨이를 통해 상기 홈 에이전트와 멀티캐스트 메시지를 교환하는 원격 컨트롤 포인트(CP)를 구비하여 UPnP 프로토콜이 TCP/IP 스택 뿐만 아니라 WAP 스택 위에서도 동작하도록 함으로써 원격 컨트롤 포인트가 WAP 게이트웨이를 통해 홈 에이전트에 접근할 수 있도록 구성함을 특징으로 한다.1. In order to achieve the above object, a home agent and a remote terminal distribute UPnP functions in a public network so that UPnP messages can be exchanged in a public network, and a home communicates with a home-based HTTP-based UPnP device in a multicast manner. An agent, a WAP gateway that converts between the HTTP / TCP / IP protocol and the WSP * / WTP / WDP protocol, and a remote that exchanges multicast messages with the home agent through the WAP gateway by UPnP stack and WAP protocol processing A control point (CP) allows the UPnP protocol to operate on the WAP stack as well as the TCP / IP stack, so that the remote control point can access the home agent through the WAP gateway.

즉, 본 발명에서 홈 에이전트와 WAP 게이트웨이에는 UPnP 스택이 구비되지 않으며 원격 컨트롤 포인트(CP)에만 UPnP 스택을 구비하여 WAP 프로토콜 스택에서 UPnP 스택이 동작하면서 TCP/IP 스택에서 동작하는 HTTP 기반의 가정 내 UPnP 디바이스와 통신하도록 함을 특징으로 한다.That is, in the present invention, the home agent and the WAP gateway are not provided with the UPnP stack, and the UPnP stack is provided only in the remote control point (CP), so that the UPnP stack operates in the WAP protocol stack and operates in the TCP / IP stack. And communicate with the UPnP device.

상기 WAP 게이트웨이는 홈 에이전트 내부 혹은 외부에 위치하도록 구성할 수 있다.The WAP gateway may be configured to be located inside or outside the home agent.

WAP 게이트웨이를 홈 에이전트 외부에 구성하는 경우 WAP 게이트웨이는 홈 에이전트와 UPnP/GENA, SSDP, SOAP/HTTP/TCP, UDP/IP 기반으로 통신하며, 원격 컨트롤 포인트와 UPnP/GENA, SSDP, SOAP/HTTP/WSP*/WTP/WDP 기반으로 통신한다.If you configure the WAP gateway outside the home agent, the WAP gateway communicates with the home agent based on UPnP / GENA, SSDP, SOAP / HTTP / TCP, UDP / IP, and the remote control point and UPnP / GENA, SSDP, SOAP / HTTP / Communicates based on WSP * / WTP / WDP.

즉, 본 발명에서 WAP 프로토콜 변환의 핵심은 확장된 HTTP와 WSP* 사이의 변환을 수행하는 것이다.In other words, the core of the WAP protocol conversion in the present invention is to perform the conversion between the extended HTTP and WSP *.

확장된 HTTP는 UPnP 디바이스 아키텍쳐 1.0에 정의된 대로 SSDP, SOAP, GENA를 HTTP에 수용하기 위해 메시지 헤더를 확장한 것을 의미한다. WAP 프로토콜 스택의 WSP는 기본적 HTTP 헤더는 모두 지원하나 UPnP에서 사용되는 일부 헤더는 지원하지 않는다.Extended HTTP refers to the extension of message headers to accommodate SSDP, SOAP, and GENA over HTTP, as defined in UPnP Device Architecture 1.0. The WSP in the WAP protocol stack supports all of the basic HTTP headers, but not some of the headers used in UPnP.

따라서, 본 발명은 WSP가 지원하지 않는 일부 헤더들을 지원하는 확장된 WSP 프로토콜로서 WSP*를 제시한다. 이하 HTTP와 WSP* 사이의 변환을 WSP* 변환이라고 약속한다.Accordingly, the present invention proposes WSP * as an extended WSP protocol that supports some headers that WSP does not support. Hereinafter, the conversion between HTTP and WSP * is called WSP * conversion.

2. 본 발명에서 WAP 게이트웨이는 HTTP 에서 WSP* 로의 프로토콜 변환과 아울러 IP주소와 포트번호를 이용하여 원격 컨트롤 포인트와 메시지 교환을 수행하도록 구성함을 특징으로 한다.2. In the present invention, the WAP gateway is configured to perform message exchange with a remote control point using an IP address and a port number as well as protocol conversion from HTTP to WSP *.

본 발명의 원격 컨트롤 포인트와 WAP 게이트웨이는 베어러(bearer) 네트워크 상의 WDP 프로토콜을 기반으로 한 WTP와 WSP 프로토콜을 이용하므로 IP 주소/포트 번호는 사용하지 않는다.Since the remote control point and the WAP gateway of the present invention use the WTP and WSP protocols based on the WDP protocol on the bearer network, the IP address / port number is not used.

그러나, IP에 기반한 UPnP 네트워크 환경을 공중망으로 그대로 확장한다는 맥락에서 WAP 게이트웨이는 원격 컨트롤 포인트마다 이를 대표하는 IP 주소와 포트번호를 구비하며 이를 원격 컨트롤 포인트의 WSP/WDP 주소 및 포트번호로 변환하는 일종의 NAT 기능을 수행하도록 구성하는 것이다.However, in the context of extending the IP-based UPnP network environment to the public network, the WAP gateway has an IP address and port number representing each remote control point and converts it into a WSP / WDP address and port number of the remote control point. It is configured to perform NAT function.

3. 본 발명은 홈 에이전트와 원격 단말에 구비되는 원격 컨트롤 포인트에 UPnP 기능을 분산하여 공중망에서 UPnP 메시지 교환이 가능하도록 구성함에 있어서, 상기 홈 에이전트는 가정 내에서 UPnP 디바이스가 DHCP나 AutoIP를 통해 동적으로 할당받은 IP 주소와 디바이스가 사용하는 포트 쌍(pair)들을 홈 에이전트의 외부 고정 IP와 포트 쌍으로 변환하며 원격 컨트롤 포인트의 외부 고정 IP와 포트를 가정 내의 동적 IP와 포트번호로 변환하는 네트워크 주소 변환(NAT ; Network Address Translation)기와, 디바이스가 전송하는 멀티캐스트 메시지를 유니캐스트 메시지로 변환하는 멀티캐스트(Multicast)/유니캐스트(Unicast) 변환기와, NAT 테이블 엔트리를 원격 컨트롤 포인트로 전달, 초기화 과정의 원격 컨트롤 포인트 접속 및 인증을 위한 메시지 교환을 지원하는 원격 CP 프로토콜 처리부로 이루어지는 원격 CP 접속 모듈을 구비하여 구성하고, 상기 원격 단말은 홈 에이전트로 전송하는 멀티캐스트 메시지를 유니캐스트 메시지로 변환하는 멀티캐스트/유니캐스트 변환기와, IP 주소와 포트번호 변환을 위해 UPnP 메시지를 수정하는 UPnP 메시지 필터와, 홈 에이전트로부터 NAT 테이블 엔트리를 수신, 초기화 과정에서 홈 에이전트 접속 및 인증을 위한 메시지 교환을 지원하는 원격 CP 프로토콜 처리부로 이루어지는 홈 에이전트 접속 모듈을 구비하여 공중망에서 메시지 교환이 가능하도록 구성함을 특징으로 한다.3. The present invention is to configure the UPnP message exchange in the public network by distributing the UPnP function to the remote control point provided in the home agent and the remote terminal, the home agent is a dynamic UPnP device in the home via DHCP or AutoIP IP address and port pairs used by the device are converted to the external static IP and port pair of the home agent, and the network address that converts the external static IP and port of the remote control point to the dynamic IP and port number in the home. Network Address Translation (NAT), a Multicast / Unicast converter that converts multicast messages sent by the device into unicast messages, and forwards NAT table entries to the remote control point. CP protocol supporting message exchange for remote control point access and authentication And a remote CP access module comprising a call processing unit. The remote terminal includes a multicast / unicast converter for converting a multicast message transmitted to a home agent into a unicast message, and a UPnP for IP address and port number conversion. Message exchange in the public network with UPnP message filter for modifying messages and home agent access module consisting of a remote CP protocol processing unit for receiving NAT table entries from the home agent and exchanging messages for home agent access and authentication during initialization It is characterized by the configuration to enable this.

상기 네트워크 주소 변환기는 가정 내에서 동적 IP 주소를 사용할 수 있도록 하고 공중망에서 정적 IP 주소를 사용할 수 있도록 하는 기능을 수행하는 것으로, 홈 에이전트에 속하는 경우와 외부에 존재하는 경우로 구분할 수 있다. 즉, 본 발명에서는 네트워크 주소 변환기가 홈 에이전트에 속하는 것을 가정하여 기술하지만 IGD(Internet Gateway Device)와 같이 외부에 존재하는 경우도 구현 가능하다. 본발명에서 NAT 관련 오퍼레이션들은 홈 에이전트 내부 함수 호출이 아닌 UPnP 액션 호출로 대치한다.The network address translator performs a function of enabling a dynamic IP address in a home and a static IP address in a public network. The network address translator may be classified into a case belonging to a home agent and a case existing outside. That is, in the present invention, it is assumed that the network address translator belongs to a home agent, but the present invention can also be implemented in the case where the network address translator is external to the Internet, such as an IGD. In the present invention, NAT-related operations are replaced with UPnP action calls, not home agent internal function calls.

상기 멀티캐스트/유니캐스트 변환기는 멀티캐스트 메시지를 공중망 구간에서 유니캐스트 메시지로 변환하기 위한 것으로, 멀티캐스트 메시지의 변환을 위한 NAT 테이블 엔트리가 필요하다. 상기 NAT 테이블 엔트리는 홈 에이전트가 디스커버리 메시지, 디바이스 디스크립션 메시지, 서비스 디스크립션 메시지에서 IP와 포트번호 쌍들을 수집하여 생성한다.The multicast / unicast converter converts a multicast message into a unicast message in a public network section, and requires a NAT table entry for converting the multicast message. The NAT table entry is generated by a home agent collecting IP and port number pairs from a discovery message, a device description message, and a service description message.

멀티캐스트 메시지에서 변환된 유니캐스트 메시지는 아래의 경우 복제(copy)되어 여러 개가 목적지로 전송되며 일대일이 아닌 일대다 NAT 테이블 엔트리를 필요로 한다.Unicast messages converted from multicast messages are copied in the following cases and sent to the destination and require one-to-many NAT table entries rather than one-to-one.

1). 가정 내의 디바이스가 전송하는 멀티캐스트 메시지를 홈 에이전트가 다수의 원격 컨트롤 포인트로 보내는 경우이다.One). A home agent sends a multicast message from a device in the home to multiple remote control points.

2). 다수의 원격 컨트롤 포인트가 존재하는 경우로서 임의의 원격 컨트롤 포인트가 전송한 멀티캐스트 메시지에서 변환된 유니캐스트 메시지를 홈 에이전트로 전달함은 물론 다른 다수의 원격 컨트롤 포인트로 일일이 송신하는 경우이다. 이는 다중 컨트롤 포인트가 가정 내에 위치한 경우와 동일한 상황을 만들기 위한 것이다. 이를 위해 원격 컨트롤 포인트는 다른 원격 컨트롤 포인트들의 존재를 알고 있어야 한다. 이는 홈 에이전트가 초기화단계에서 등록된 원격 컨트롤 포인트의 신분을 기존의 원격 컨트롤 포인트로 알리는 것에 의해 달성될 수 있다.2). This is a case where there are a plurality of remote control points. In this case, a unicast message converted from a multicast message transmitted by an arbitrary remote control point is transmitted to a home agent as well as transmitted to a plurality of other remote control points. This is to create the same situation as when multiple control points are located in the home. For this purpose, the remote control point must know the presence of other remote control points. This can be accomplished by the home agent informing the existing remote control point of the identity of the remote control point registered in the initialization phase.

홈 에이전트는 멀티캐스트 송수신을 위한 멀티캐스트용 포트를 갖는데 이는홈 에이전트 외부 고정 IP와 포트 번호로 구성된다. 마찬가지로 원격 컨트로 포인트도 멀티캐스트 송수신을 위한 멀티캐스트용 포트를 갖는데 이는 원격 컨트롤 포인트 외부 고정 IP와 포트 번호로 구성된다. UPnP에서는 멀티캐스트 주소로 고정주소 예로, '239.255.255.250:1900'이 사용된다.The home agent has a port for multicast for multicast transmission and reception, which consists of a fixed IP and a port number outside the home agent. Similarly, the remote control point has a port for multicast for multicast transmission and reception, which consists of a static IP and port number external to the remote control point. In UPnP, a fixed address example, '239.255.255.250:1900' is used as a multicast address.

본 발명에서는 다중 홈 네트워크와 원격 컨트롤 포인트를 지원함에 있어서, 다중 홈 네트워크는 UPnP 디바이스의 외부 IP 주소로 이루어지며 다중 원격 컨트롤 포인트는 NAT 및 유니캐스트-멀티캐스트 변환에 의해 이루어진다.In the present invention, in supporting the multi-home network and the remote control point, the multi-home network is composed of the external IP address of the UPnP device, and the multi-remote control point is made by NAT and unicast-multicast conversion.

본 발명에서 원격 컨트롤 포인트가 다중 홈 네트워크를 액세스하는 방식은 제한없이 구현할 수 있다. 예를 들어, 서로 다른 홈 네트워크에 분산된 UPnP 디바이스들을 마치 하나의 홈 네트워크에 있는 것처럼 사용자에게 보여줄 수 있다.In the present invention, the manner in which the remote control point accesses the multi-home network can be implemented without limitation. For example, UPnP devices distributed in different home networks can be shown to the user as if they were in one home network.

4. 본 발명에서 상기 메시지 필터는 IP 주소와 포트번호 변환을 위해 IP 주소와 포트번호를 포함하는 XML 디스크립션 문서를 포함하는 UPnP 메시지들을 수정하는 것으로, 홈 에이전트, WAP 게이트웨이 또는 원격 컨트롤 포인트에 존재할 수 있다.4. In the present invention, the message filter modifies UPnP messages including an XML description document including an IP address and a port number for IP address and port number translation, and may exist in a home agent, a WAP gateway, or a remote control point. have.

즉, 본 발명에서 홈 에이전트 보다 원격 컨트롤 포인트에 다수의 기능을 구비한다는 가정 하에 원격 컨트롤 포인트에 메시지 필터를 구비하는 경우를 기술하였지만, 홈 에이전트에 많은 부담을 주지 않는 기술 예를 들면, UPnP 메시지 full parser가 아닌 메시지내 URL 주소만을 인식하여 교체 가능하도록 한 메시지 필터를 홈 에이전트 또는 WAP 게이트웨이에 구비할 수도 있다. 이 경우, 원격 컨트롤 포인트에서 메시지 필터링을 위한 NAT 주소 통보는 필요없게 된다.That is, although the present invention describes a case in which a message filter is provided in the remote control point under the assumption that the remote control point has more functions than the home agent, a technology that does not burden the home agent, for example, UPnP message full A message filter may be provided in the home agent or the WAP gateway to recognize and replace only the URL address in the message and not the parser. In this case, the NAT address notification for message filtering at the remote control point is not necessary.

5. 본 발명에서 원격 CP 프로토콜은 원격 컨트롤 포인트 구현을 위한 판매자 특정 프로토콜로 정의되며 이는 홈 에이전트와 원격 컨트롤 포인트 간의 공중망에서의 메시지 교환을 지원하기 위한 것이다.5. In the present invention, the remote CP protocol is defined as a vendor specific protocol for implementing a remote control point, which is intended to support message exchange in a public network between a home agent and a remote control point.

교환 메시지는 원격 컨트롤 포인트로의 NAT 테이블 엔트리 전달 기능, 초기화 과정의 원격 컨트롤 포인트 접속 및 인증 기능을 수행한다. 본 발명에서 원격 프로토콜 메시지는 HTTP를 확장한 헤더를 정의하는 것으로 가정하며 이는 기본적으로 UPnP 유니캐스트 포트를 사용한다.The exchange message performs NAT table entry forwarding to the remote control point, remote control point access and authentication during initialization. In the present invention, it is assumed that the remote protocol message defines an header extended from HTTP, which basically uses a UPnP unicast port.

6. 본 발명에서 WAP 게이트웨이에는 메시지 필터 뿐만 아니라 원격 CP 프로토콜 처리부를 구비하여 구성할 수 있다. 이는 메시지 필터와 원격 CP 프로토콜 처리부를 다수의 원격 컨트롤 포인트 및 원격 접근 서비스 인스턴스가 공유할 수 있기 때문이다. 특히, WAP 게이트웨이가 사업자 네트워크 내부에 존재할 때 이러한 장점이 두드러지게 나타날 수 있을 것이다.6. In the present invention, the WAP gateway may be configured to include a remote CP protocol processing unit as well as a message filter. This is because the message filter and the remote CP protocol processor can be shared by multiple remote control points and remote access service instances. In particular, this advantage may be prominent when the WAP gateway is present inside the operator's network.

이하, 본 발명을 도면에 의거 상세히 설명하면 다음과 같다.Hereinafter, the present invention will be described in detail with reference to the drawings.

도3은 본 발명의 실시예를 위한 프로토콜 관계를 보인 예시도로서 이에 도시한 바와 같이, HTTP 기반의 홈 에이전트(310)과 UPnP 및 WAP 기반의 원격 컨트롤 포인트(320) 간의 통신을 위해 WAP 프로토콜과 HTTP 프로토콜을 지원하는 WAP 게이트웨이(330)를 추가함에 있어서, 상기 WAP 게이트웨이(330)는 UPnP 프로토콜의 투명한(transparent) 동작을 위해 GENA, SSDP, SOAP을 지원하는 WSP의 확장판인 WSP* 프로토콜을 탑재하여 구성한다.3 is an exemplary diagram showing a protocol relationship for an embodiment of the present invention, as shown here, the WAP protocol and the communication for the communication between the HTTP-based home agent 310 and UPnP and WAP-based remote control point 320 In adding the WAP gateway 330 supporting the HTTP protocol, the WAP gateway 330 is equipped with the WSP * protocol, which is an extension of the WSP supporting GENA, SSDP, and SOAP for the transparent operation of the UPnP protocol. Configure.

상기 홈 에이전트(310)는 다수 원격 CP 접속 관리, NAT, 그리고 유니캐스트-멀티캐스트 변환 기능을 수행하도록 구성한다.The home agent 310 is configured to perform multiple remote CP connection management, NAT, and unicast-multicast conversion functions.

상기 WAP 게이트웨이(330)는 TCP/IP 프로토콜과 WAP 프로토콜 간의 변환 기능을 수행하도록 구성한다.The WAP gateway 330 is configured to perform a conversion function between the TCP / IP protocol and the WAP protocol.

상기 원격 컨트롤 포인트(320)는 메시지 필터, 멀티캐스트/유니캐스트 변환 기능을 수행하도록 구성한다.The remote control point 320 is configured to perform a message filter, multicast / unicast conversion function.

본 발명의 실시예에서 홈 에이전트(310)와 원격 컨트롤 포인트(320) 간의 원격 접속 관련 정보 교환은 원격 CP 프로토콜을 이용한다.In an embodiment of the present invention, the remote connection related information exchange between the home agent 310 and the remote control point 320 uses a remote CP protocol.

또한, WSP 프로토콜은 무선기기를 위한 HTTP 프로토콜이라고 인식하면 된다. 이는 문자를 전송하는 HTTP 프로토콜과는 달리 압축된 2진(binary) 형태로 전송되지만 웹 브라우징을 염두에 두고 설계되었다. 이에 따라, WSP는 HTTP와 일대일 대응되는 프로토콜이며 통상적인 HTTP 헤더를 포함한다. 그런데, UPnP에서 사용되는 HTTP는 GENA, SSDP, SOAP에 대응하는 확장된 헤더를 지원한다.In addition, the WSP protocol may be recognized as an HTTP protocol for a wireless device. Unlike the HTTP protocol for sending characters, it is sent in a compressed binary format, but designed with web browsing in mind. Accordingly, WSP is a one-to-one correspondence with HTTP and includes conventional HTTP headers. However, HTTP used in UPnP supports extended headers corresponding to GENA, SSDP, and SOAP.

따라서, 본 발명의 실시예에서 WAP 게이트웨이(330)에 탑재되는 WSP*는 UPnP를 위한 GENA, SSDP, SOAP을 지원한다는 것 이외에는 통상적인 WSP와 완전 동일게 구성한다.Therefore, in the embodiment of the present invention, the WSP * mounted on the WAP gateway 330 is configured exactly the same as the conventional WSP except that it supports GENA, SSDP, and SOAP for UPnP.

또한, UPnP 디바이스 입장에서 원격 컨트롤 포인트(320)가 가정 내의 IP 기반의 컨트롤 포인트처럼 보이려면 WSP* 변환 이외에 WAP 게이트웨이(330)가 원격 컨트롤 포인트(320)를 IP 주소와 포트번호로 대리하는 기능이 필요하지만, 원격 컨트롤 포인트(320)와 WAP 게이트웨이(330)는 베어러(bearer) 네트워크 상의 WDP 프로토콜을 기반으로 한 WTP와 WSP 프로토콜을 이용하므로 IP 주소/포트 번호는 사용하지 않는다.In addition, in order for the remote control point 320 to look like an IP-based control point in the home from the perspective of the UPnP device, in addition to the WSP * conversion, the WAP gateway 330 substitutes the remote control point 320 for the IP address and port number. Although necessary, the remote control point 320 and the WAP gateway 330 do not use an IP address / port number because they use the WTP and WSP protocols based on the WDP protocol on a bearer network.

따라서, 상기 WAP 게이트웨이(330)는 IP에 기반한 UPnP 네트워크 환경을 공중망으로 그대로 확장한다는 맥락에서 도4의 예시도에 도시한 바와 같이, 각각의 원격 컨트롤 포인트를 대표하는 IP 주소와 포트번호를 구비하며 이를 원격 컨트롤 포인트의 WSP/WDP 주소 및 포트번호로 변환하는 일종의 NAT 기능을 수행하도록 구성한다.Accordingly, the WAP gateway 330 has an IP address and a port number representing each remote control point, as shown in the example of FIG. 4 in the context of extending the IP-based UPnP network environment to the public network. Configure it to perform some sort of NAT function that translates it to the WSP / WDP address and port number of the remote control point.

본 발명의 실시예에서는 홈 에이전트(310)와 원격 단말에 탑재되는 원격 컨트롤 포인트(320)에 동등하게 기능을 분산함에 있어서, 홈 에이전트(310)에는 UPnP 스택을 구비함이 없이 원격 컨트롤 포인트(320)가 WAP 스택에서 동작하는 UPnP 스택을 구비하며 WAP 게이트웨이(330)가 TCP/IP 프로토콜과 WAP 프로토콜 변환을 수행하도록 하는 동작을 설명하기로 한다.In the embodiment of the present invention, in distributing functions equally to the home agent 310 and the remote control point 320 mounted on the remote terminal, the home agent 310 does not have a UPnP stack, but the remote control point 320 is provided. ) Has an UPnP stack operating in the WAP stack, and the operation of causing the WAP gateway 330 to perform TCP / IP protocol and WAP protocol conversion will be described.

상기 WAP 게이트웨이(330)는 홈 에이전트(310) 또는 사업자망 혹은 공중망에 존재할 수 있다.The WAP gateway 330 may exist in the home agent 310 or the operator network or the public network.

본 발명의 실시예에서는 WAP 게이트웨이(330)가 홈 에이전트(310)의 외부에 있다고 가정하여 설명하기로 한다.In the embodiment of the present invention, it is assumed that the WAP gateway 330 is outside the home agent 310.

본 발명의 실시예를 위한 컨트롤 포인트 기능 분산 시스템은 도5의 구성도에 도시한 바와 같이, 홈 에이전트(310)와 원격 컨트롤 포인트(320)에 UPnP 기능을 분산하여 공중망에서 UPnP 메시지 교환이 가능하도록 구성함에 있어서, 상기 홈 에이전트(310)는 가정 내에서 UPnP 디바이스가 DHCP나 AutoIP를 통해 동적으로 할당받은 IP 주소와 디바이스가 사용하는 포트 쌍(pair)들을 홈 에이전트의 외부 고정 IP와 포트 쌍으로 변환하며 원격 컨트롤 포인트의 외부 고정 IP와 포트를 가정 내의 동적 IP와 포트번호로 변환하는 네트워크 주소 변환(NAT)기(312)와, 디바이스가 전송하는 멀티캐스트 메시지를 유니캐스트 메시지로 변환하는 멀티캐스트(Multicast)/유니캐스트(Unicast) 변환기(311)와, 접속된 원격 컨트롤 포인트에 관한 단말 정보를 저장하는 데이터 저장부(314)와, NAT 테이블 엔트리를 원격 컨트롤 포인트로 전달, 초기화 과정의 원격 컨트롤 포인트 접속 및 인증을 위한 메시지 교환을 지원하는 원격 CP 프로토콜 처리부(313)로 이루어지는 원격 CP 접속 모듈을 구비하여 구성하고, 상기 원격 컨트롤 포인트(320)는 홈 에이전트로 전송하는 멀티캐스트 메시지를 유니캐스트 메시지로 변환하는 멀티캐스트/유니캐스트 변환기(321)와, IP 주소와 포트번호 변환을 위해 UPnP 메시지를 수정하는 UPnP 메시지 필터(322)와, 홈 에이전트(310)에 접속된 다른 원격 컨트롤 포인트 정보, 메시지 필터(322)에 관련한 정보, 홈 에이전트(310)에 관련한 정보를 저장하는 데이터 저장부(324)와, 홈 에이전트(310)로부터 NAT 테이블 엔트리를 수신, 초기화 과정에서 홈 에이전트 접속 및 인증을 위한 메시지 교환을 지원하는 원격 CP 프로토콜 처리부(323)로 이루어지는 홈 에이전트 접속 모듈을 구비하여 구성한다.Control point function distribution system for an embodiment of the present invention, as shown in the configuration of Figure 5, to distribute the UPnP function to the home agent 310 and the remote control point 320 to enable UPnP message exchange in the public network In the configuration, the home agent 310 converts IP addresses and port pairs that are dynamically allocated by UPnP devices through DHCP or AutoIP in the home into external static IP and port pairs of the home agent. Network address translator (NAT) 312 that translates external static IP and ports of the remote control point into dynamic IP and port numbers in the home, and multicast that converts multicast messages transmitted by the device into unicast messages. A multicast / unicast converter 311, a data storage unit 314 for storing terminal information about the connected remote control point, and a NAT table. A remote CP access module comprising a remote CP protocol processing unit 313 for transferring an entry to a remote control point, accessing a remote control point in an initialization process, and exchanging messages for authentication, and the remote control point 320 A multicast / unicast converter 321 for converting a multicast message to a home agent into a unicast message, a UPnP message filter 322 for modifying UPnP messages for IP address and port number translation, and a home agent Data storage unit 324 for storing other remote control point information connected to the 310, information related to the message filter 322, information related to the home agent 310, and NAT table entries from the home agent 310. It consists of a remote CP protocol processing unit 323 that supports message exchange for home agent access and authentication during reception and initialization. It is configured by having a home agent connected to the module.

상기 네트워크 주소 변환기(312)는 홈 에이전트(310)의 외부에 구비하여 구성할 수 있다.The network address translator 312 may be configured to be provided outside the home agent 310.

상기 메시지 필터(322)는 WAP 게이트웨이(330)에 구비하여 구성할 수 있다.The message filter 322 may be provided in the WAP gateway 330.

UPnP 디바이스는 DHCP나 AutoIP를 이용해 동적으로 가정 내에서만 유효한 IP 주소를 할당받으며 그 IP 주소와 함께 웹서버에 필요한 포트(port) 번호를 더 필요로 한다. 예를 들어, 멀티캐스트 수신주소로 '239.255.255.250:1900'을 추가하면 UPnP 디바이스로 동작이 가능하다. 이 경우, 컨트롤 포인트(310)에는 웹 클라이언트를 위한 IP 주소와 멀티캐스트 수신주소(예로 '239.255.255.250:1900')을 추가하면 된다.UPnP devices are dynamically assigned IP addresses that are valid only inside the home using DHCP or AutoIP, and they need more port numbers for the web server along with those IP addresses. For example, if you add '239.255.255.250:1900' as a multicast destination, you can operate as a UPnP device. In this case, the control point 310 may add an IP address and a multicast receiving address (for example, '239.255.255.250:1900') for the web client.

상기 네트워크 주소 변환기(312)는 가정 내에서 UPnP 디바이스에게 웹서버용으로 동적 할당된 IP 주소 및 포트번호를 홈 에이전트(310)의 외부 IP와 포트번호로 변환하며, 원격 컨트롤 포인트(320)의 외부 IP와 포트 번호를 홈 에이전트(310)의 내부 IP와 포트 번호로 변환한다. 즉, 가정 내에서는 내부 IP 주소를 이용하여 통신하며 공중망에서는 외부 IP 주소를 이용하여 통신한다.The network address translator 312 converts the IP address and port number dynamically allocated to the UPnP device for the web server in the home into the external IP and the port number of the home agent 310, and the external IP of the remote control point 320. And port number are converted into the internal IP and port number of the home agent (310). In other words, it communicates using the internal IP address in the home and communicates using the external IP address in the public network.

이와같이 패킷 내용이 아닌 주소 필드를 변경하는 네트워크 주소 변환(NAT) 동작은 홈 에이전트(310)에서만 수행되고 원격 컨트롤 포인트(320)에서는 수행되지 않는다.As such, a network address translation (NAT) operation of changing an address field other than packet contents is performed only at the home agent 310 and not at the remote control point 320.

따라서, 멀티캐스트 메시지가 공중망을 거쳐 다수의 원격 컨트롤 포인트로 전송될 때 접속된 원격 컨트롤 포인트마다 그 원격 컨트롤 포인트의 멀티캐스트용 외부 주소/포트로 향하는 유니캐스트 메시지로 변환된다.Thus, when a multicast message is sent over a public network to multiple remote control points, each connected remote control point is converted into a unicast message directed to the multicast external address / port of that remote control point.

그리고, 원격 컨트롤 포인트(320)에서 홈 에이전트(310)로 향하는 멀티캐스트 메시지 전송은 홈 에이전트 외부의 멀티캐스트용 포트로 주소 변환되어 유니캐스트 형태로 송신됨과 아울러 다른 원격 컨트롤 포인트에도 유니캐스트 형태로 전달되는 방식과, 원격 컨트롤 포인트(320)가 홈 에이전트(310)로 멀티캐스트 메시지를 보내고 홈 에이전트(320)가 다른 원격 컨트롤 포인트로 멀티캐스트 메시지를 전달하도록 하는 방식으로 구현할 수 있다.In addition, the multicast message transmission from the remote control point 320 to the home agent 310 is addressed to a multicast port outside the home agent and transmitted in unicast form, and also transmitted to other remote control points in unicast form. And the remote control point 320 sends a multicast message to the home agent 310 and the home agent 320 delivers the multicast message to another remote control point.

이러한 네트워크 주소 변환기(312)는 IGD 등과 같이 외부에 존재할 수 있다.Such a network address translator 312 may exist externally, such as an IGD.

한편, 디바이스로부터 컨트롤 포인트(CP)로 전달되는 메시지 내용 중에 주소 및 포트 정보가 포함된 경우 이들을 외부 주소로 변환해 주어야 하는데 그 역할을 담당하는 것이 메시지 필터(322)이다.On the other hand, if address and port information is included in the message content transmitted from the device to the control point (CP), they should be converted to an external address, and the message filter 322 plays a role.

원격 컨트롤 포인트(320)에 메시지 필터(322)를 구비하는 이유는 홈 에이전트(310)에 UPnP 스택을 포함하지 않았기 때문이다. 따라서 UPnP 메시지 내부도 볼 수 없다.The reason for having the message filter 322 in the remote control point 320 is that the home agent 310 does not include the UPnP stack. Therefore, you cannot see inside the UPnP message.

반면 원격 컨트롤 포인트(320)는 XML 파서 및 UPnP 스택을 갖고 있다. 이들은 UPnP 내부 메시지를 검사하고 수정할 때 필수적이다. 원격 컨트롤 포인트(320)에는 NAT 정보를 갖고 있지 않기 때문에 홈 에이전트(310)는 NAT 정보가 생성될 때 마다 원격 컨트롤 포인트(320)로 통보하고 원격 컨트롤 포인트(320)는 NAT 정보를 원격 CP 프로토콜 데이터 저장부(324)에 저장하여 관리한다.Remote control point 320, on the other hand, has an XML parser and a UPnP stack. These are essential when checking and modifying UPnP internal messages. Since the remote control point 320 does not have NAT information, the home agent 310 notifies the remote control point 320 whenever NAT information is generated, and the remote control point 320 reports the NAT information to the remote CP protocol data. It is stored in the storage unit 324 and managed.

즉, 메시지 필터(322)는 특정 애플리케이션에만 적용되는 ALG(Application Level Gateway)의 일종이라고 할 수 있으며 설치 위치를 변경하여 홈 에이전트(310)에 구비할 수 있다.That is, the message filter 322 may be referred to as a type of application level gateway (ALG) applied only to a specific application and may be provided to the home agent 310 by changing an installation location.

이와같이 구성한 본 발명의 실시예에 대한 동작 및 작용 효과를 도6 내지 도15를 참조하여 설명하면 다음과 같다.The operation and the effect of the embodiment of the present invention configured as described above will be described with reference to FIGS. 6 to 15.

1. 본 발명의 실시예에서 홈 에이전트(310)의 동작을 도6의 동작 순서도를 참조하여 설명하기로 한다.1. Operation of the home agent 310 in the embodiment of the present invention will be described with reference to the operation flowchart of FIG.

우선, 필요한 구성요소를 부팅한 뒤 접속한 원격 컨트롤 포인트가 있는지 확인한다.First, boot the required components and check if there are any remote control points connected.

접속된 컨트롤 포인트가 있는 경우 송수신된 UPnP 패킷에 대해 도6의 동작 순서도와 동일한 과정으로 패킷 변환을 수행한다.If there is an access control point, packet conversion is performed on the transmitted and received UPnP packets in the same process as the flowchart of FIG.

만일, 접속된 원격 컨트롤 포인트가 없는 경우 원격 컨트롤 포인트(도3에서 320)로부터 접속 요청이 있는지 확인한다.If there is no remote control point connected, check whether there is a connection request from the remote control point (320 in FIG. 3).

이에 따라, 원격 컨트롤 포인트(320)로부터 접속 요청이 확인되면 도7의 동작 순서도와 동일한 과정으로 접속 절차를 수행한다.Accordingly, when the access request is confirmed from the remote control point 320, the access procedure is performed in the same process as the flowchart of FIG.

만일, 원격 컨트롤 포인트로부터 접속 요청이 확인되지 않는 경우 현재 접속된 원격 컨트롤 포인트로부터 접속 종료 요청이 있는지 확인한다.If the connection request is not confirmed from the remote control point, check whether there is a connection termination request from the currently connected remote control point.

이에 따라, 접속 종료 요청이 확인되면 접속 종료 절차를 수행한다. 이 과정은 홈 에이전트 서비스가 종료되는 부분으로 필요한 시스템 자원의 반납과 원격 CP 프로토콜을 이용한 종료 통보를 포함한다. 보통 원격 컨트롤 포인트는 접속을 종료하지만 조건에 따라 동일 홈 에이전트와의 다른 세션을 위해 또는 다른 홈 에이전트와의 세션을 위해 계속 실행될 수 있다.Accordingly, when the connection termination request is confirmed, the connection termination procedure is performed. This process includes the return of the necessary system resources as part of the termination of the home agent service and the termination notification using the remote CP protocol. Normally, the remote control point closes the connection but can continue to run for another session with the same home agent or for a session with another home agent, depending on the conditions.

만일, 원격 컨트롤 포인트로부터 접속 요청 또는 접속 종료 요청이 확인되지 않으면 홈 에이전트의 접속 종료 요청이 있는지 확인한다.If the connection request or the connection termination request is not confirmed from the remote control point, check whether there is a connection termination request from the home agent.

이에 따라, 홈 에이전트의 접속 종료 요청으로 판단되면 동작을 종료하며 반대로, 홈 에이전트의 접속 종료 요청이 확인되지 않으면 다시 상기 단계를 반복적으로 수행한다.Accordingly, the operation is terminated when it is determined that the home agent is requested to terminate the access. On the contrary, if the home agent is not confirmed, the above steps are repeatedly performed.

도6의 동작 과정에서 접속과 종료 과정은 WAP 게이트웨이(330)에서 원격 컨트롤 포인트(320)를 대리하는 IP 주소/포트의 할당/반납 및 WDP 주소/포트번호로의 매핑을 위한 구조의 할당/반납을 포함한다.In the operation process of FIG. 6, the access and termination process may be performed by allocating / returning an IP address / port on behalf of the remote control point 320 in the WAP gateway 330 and assigning / returning a structure for mapping to the WDP address / port number. It includes.

또한, 도6에서 패킷 변환 과정을 도8의 동작 순서도를 참조하여 설명하기로 한다. 즉, 도8은 홈 에이전트(310) 내의 원격 CP 접속 모듈에서 이루어지는 패킷 변환 과정을 도시한 것이다.In addition, the packet conversion process in FIG. 6 will be described with reference to the operation flowchart of FIG. 8. That is, FIG. 8 illustrates a packet conversion process performed in the remote CP access module in the home agent 310.

원격 컨트롤 포인트(320)로부터 송신된 UPnP 패킷이 있는지 확인한다.Check whether there is a UPnP packet transmitted from the remote control point 320.

이때, 원격 컨트롤 포인트(320)로부터 공중망을 거쳐 수신된 패킷이 있는 경우 수신 디바이스 주소가 NAT 테이블에 존재하는지 확인한다.At this time, if there is a packet received from the remote control point 320 over the public network, it is checked whether the receiving device address exists in the NAT table.

만일, 수신 디바이스 주소가 NAT 테이블에 존재하지 않으면 디바이스가 등록되지 않았다는 의미이므로 에러로 판단하여 원격 컨트롤 포인트(320)에 이 내용을 통보한다.If the address of the receiving device does not exist in the NAT table, it means that the device is not registered. Therefore, the receiving device address is determined to be an error and the remote control point 320 is notified of the content.

반대로, 수신 디바이스 주소가 NAT 테이블에 존재하면 NAT 테이블을 이용하여 수신주소 필드를 변환하고 해당 디바이스에 전달하거나 멀티캐스트 한다.On the contrary, if the receiving device address exists in the NAT table, the receiving address field is converted using the NAT table and transmitted to the corresponding device or multicasted.

이때, 멀티캐스트 패킷의 경우 도15의 예시도에 도시한 바와 같이, 원격 컨트롤 포인트(320)에서 홈 에이전트(310)의 멀티캐스트용 포트로 유니캐스트 패킷을 이용해 전송되어야 하며 이의 NAT 엔트리는 원격 컨트롤 포인트 접속시 할당된다.In this case, as shown in the example of FIG. 15, the multicast packet should be transmitted from the remote control point 320 to the multicast port of the home agent 310 using a unicast packet and its NAT entry is remotely controlled. Allocated at point connection.

또한, 디바이스로부터 원격 컨트롤 포인트(320)로 송신된 패킷이 있는 경우 송신 디바이스 주소가 NAT 테이블에 있는지 확인한다.In addition, if there is a packet transmitted from the device to the remote control point 320, the transmission device address is checked in the NAT table.

만일, 송신 디바이스 주소가 NAT 테이블에 존재하지 않으면 먼저 디바이스의NAT 테이블 엔트리를 할당한다. 즉, UPnP 디바이스로부터 송신 패킷이 있는 경우 도12의 예시도에 도시한 바와 같이 엔트리 할당은 홈 에이전트(310)의 외부 IP주소와 외부 포트의 할당을 포함한다. 이와같이 할당한 엔트리 내용을 접속된 모든 원격 컨트롤 포인트로 통보한다. 만일, 메시지 필터가 홈 에이전트(310)에 구비되어 있는 경우라면 엔트리 내용 통보를 생략된다.If the source device address does not exist in the NAT table, the device allocates a NAT table entry first. That is, when there is a transmission packet from the UPnP device, as shown in the example of FIG. 12, entry allocation includes allocation of an external IP address and an external port of the home agent 310. In this way, the contents of the assigned entry are notified to all connected remote control points. If the message filter is provided in the home agent 310, notification of entry contents is omitted.

이후, 디바이스에서의 송신 패킷은 송신 디바이스 주소가 외부 주소로 변환된 뒤 공중망으로 전송된다.Thereafter, the transmission packet in the device is transmitted to the public network after the transmission device address is converted into an external address.

이때, 송신 패킷이 멀티캐스트인 경우는 도14의 예시도에 도시한 바와 같이, 접속된 원격 CP의 멀티캐스트용 포트에 유니캐스트 형태로 전송한다. 즉, 멀티캐스트 패킷의 경우 송신 디바이스 주소를 NAT 테이블을 참조하여 변환하고 NAT 테이블엣 해당 외부 멀티캐스트 주소 목록을 읽어 외부 멀티캐스트 주소별로 패킷을 복사하여 전송한다.At this time, when the transmission packet is multicast, as shown in the example of FIG. 14, the transmission packet is transmitted in unicast form to the multicast port of the connected remote CP. That is, in the case of multicast packets, the sender device address is converted by referring to the NAT table, the NAT table is read from the corresponding external multicast address list, and the packet is copied for each external multicast address and transmitted.

실제로 유니캐스트와 멀티캐스트의 주소 변환은 도8의 동작 순서도에 도시한 바와 같이 구분할 필요는 없다.In practice, the address translation of unicast and multicast need not be distinguished as shown in the operation flowchart of FIG.

상기에서 멀티캐스트 패킷과 유니캐스트 패킷을 포트에 기반하여 구분하였지만, 패킷 헤더에 추가 정보를 넣어 멀티캐스트 패킷을 구분할 수도 있다.Although the multicast packet and the unicast packet are classified based on the port, the multicast packet may be distinguished by adding additional information to the packet header.

그리고, 도6에서 원격 컨트롤 포인트(320)로부터의 접속 요청에 대해 홈 에이전트(310)에서의 접속 과정을 도9의 동작 순서도를 참조하여 설명하기로 한다.In FIG. 6, the connection process of the home agent 310 with respect to the connection request from the remote control point 320 will be described with reference to the operation flowchart of FIG. 9.

도9의 과정에서 WAP 게이트웨이(330)가 원격 주소를 대리하는 IP주소 및 포트를 할당하는 작업은 접속 시도 과정에서 수행한다. 이를 위한 프로토콜 구현은여러 방법이 있을 수 있다. 첫번째 방법은 원격 CP 프로토콜을 확장하여 원격 컨트롤 포인트(320)가 접속 요청시 WAP 게이트웨이(330)에게 이 사실을 통보하고 홈 에이전트(310)도 응답을 원격 컨트롤 포인트(320)와 WAP 게이트웨이(330)로 보내는 방법이다. 둘째 방법은 새로운 메시지를 정하지 않고 WAP 게이트웨이(330)가 접속 시도 및 응답 메시지를 들여다 보는 방법으로, 이 경우 full parser는 아니더라도 일부 헤더 필드를 구분할 수 있는 능력이 WAP 게이트웨이(330)에 필요하다.In the process of FIG. 9, the WAP gateway 330 allocates an IP address and a port representing a remote address in the connection attempt process. There may be several ways to implement a protocol for this. The first method extends the remote CP protocol so that the remote control point 320 notifies the WAP gateway 330 of the connection request, and the home agent 310 also sends a response to the remote control point 320 and the WAP gateway 330. How to send to. The second method is a method in which the WAP gateway 330 looks at the connection attempt and response message without defining a new message. In this case, the WAP gateway 330 needs to be able to distinguish some header fields even if it is not a full parser.

도9에서 우선, 홈 에이전트(310)는 원격 컨트롤 포인트(320)로부터의 접속 시도에 대해 인증한 후 암호화 방식을 결정하고 상기 원격 컨트롤 포인트(320)에 관련한 정보를 수신한다.In FIG. 9, home agent 310 first authenticates an access attempt from remote control point 320 and then determines an encryption scheme and receives information regarding the remote control point 320.

이후, 디바이스-단말 쌍을 구성하고 필요한 경우 액세스 서버로부터 구성요소를 다운로드한다.The device-terminal pair is then configured and the component is downloaded from the access server if necessary.

이후, 홈 에이전트(310)는 접속을 요청하는 원격 컨트롤 포인트(320)의 IP와 웹클라이언트 포트를 기록하고 하나의 내부 포트를 할당한 후 내부 IP주소와 결합하여 NAT 엔트리를 할당한다.Thereafter, the home agent 310 records the IP and the web client port of the remote control point 320 requesting the connection, allocates one internal port, and allocates a NAT entry by combining with the internal IP address.

이후, 내부 고정 멀티캐스트 주소/포트 엔트리에 원격 컨트롤 포인트(320)의 외부 IP주소와 멀티캐스트용 포트를 추가한다. 또한 홈 에이전트(310)의 멀티캐스트용 포트 번호를 할당한다. 상기 할당 엔트리는 원격 CP 프로토콜을 통해서 원격 컨트롤 포인트(320)로 통보된다. 원격 컨트롤 포인트(320)는 멀티캐스트 메시지를 보낼 때 외부 포트와 외부 IP주소로 유니캐스트 패킷을 보내게 된다.Then, the external IP address of the remote control point 320 and the port for multicast are added to the internal fixed multicast address / port entry. In addition, the multicast port number of the home agent 310 is allocated. The assignment entry is notified to the remote control point 320 via the remote CP protocol. The remote control point 320 sends a unicast packet to an external port and an external IP address when sending a multicast message.

그리고, 새로운 원격 컨트롤 포인트가 접속되었음을 다른 원격 컨트롤 포인트로 알린다. 다중 원격 컨트롤 포인트가 홈 네트워크에 존재한다고 가정할 때 임의의 컨트롤 포인트가 전송한 멀티캐스트 메시지는 다른 컨트롤 포인트에서도 볼 수 있다.It notifies the other remote control point that the new remote control point is connected. Assuming that multiple remote control points exist on the home network, multicast messages sent by any control point can be seen by other control points.

즉, 현재 UPnP 디바이스 아키텍쳐 1.0 사양에는 다중 UPnP 컨트롤 포인트에 관한 명세가 없지만, 본 발병에서는 판매자 사양 예를 들어, 시큐리티(security) 기능을 구현하여 다른 컨트롤 포인트로부터의 멀티캐스트 메시지를 유용하게 사용할 수 있다. 이를 위해 원격 컨트롤 포인트들 간에 멀티캐스트 메시지가 수신되도록 한다.That is, although the current UPnP device architecture 1.0 specification does not have a specification for multiple UPnP control points, the present invention implements a vendor specification, for example, a security function, so that multicast messages from other control points can be usefully used. . To do this, a multicast message is received between remote control points.

2. 본 발명의 실시예에서 원격 컨트롤 포인트(320)의 동작을 도7의 동작 순서도를 참조하여 설명하기로 한다.2. Operation of the remote control point 320 in the embodiment of the present invention will be described with reference to the operation flowchart of FIG.

원격 컨트롤 포인트(320)는 동작을 시작하면 접속 초기화를 진행시킨다. 이 과정은 원격 CP 프로토콜을 이용한 접속, 인증, NAT 등록 등이 포함되며 WAP 게이트웨이(330)의 설정 부분도 포함된다.The remote control point 320 proceeds with the connection initialization when the operation starts. This process includes connection, authentication, NAT registration, etc. using the remote CP protocol, and also includes the configuration portion of the WAP gateway 330.

이후, 초기화가 완료되면 송수신된 UPnP 패킷이 존재하는지 확인한다. 이에 따라, 송수신된 패킷이 존재하면 도8의 동작 순서도와 동일한 과정으로 패킷 변환을 수행한다.After the initialization is completed, it is checked whether the transmitted and received UPnP packets exist. Accordingly, if the transmitted / received packets exist, packet conversion is performed in the same process as the operation flowchart of FIG. 8.

만일, 송수신된 UPnP 패킷이 존재하지 않으면 원격 CP 프로토콜 패킷이 있는지 확인한다. 이에 따라, 원격 CP 프로토콜 패킷이 확인되면 도9의 동작 순서도와 동일한 과정으로 원격 CP 프로토콜 처리를 수행한다.If there is no UPnP packet transmitted and received, check whether there is a remote CP protocol packet. Accordingly, when the remote CP protocol packet is confirmed, the remote CP protocol process is performed in the same process as the operation flowchart of FIG.

또한, 원격 CP 프로토콜 패킷이 확인되지 않으면 원격 컨트롤 포인트로부터종료 요청이 있는지 확인한다. 이에 따라, 종료 요청이 확인되면 접속을 종료하는데, 이러한 접속 종료는 원격 CP 프로토콜을 통해 접속 종료를 원격 컨트롤 포인트로 통보하는 것으로 시작하며 홈 에이전트(3100는 해당 원격 컨트롤 포인트에 관련된 NAT 정보 등의 자원을 반납하고 다른 원격 컨트롤 포인트로 이 사실을 알린다. 반대로, 접속 요청이 확인되지 않으면 상기 설명된 초기 단계부터 반복 수행한다.In addition, if the remote CP protocol packet is not acknowledged, check whether there is a termination request from the remote control point. Accordingly, when the termination request is confirmed, the connection is terminated. The connection termination begins by informing the remote control point of the termination of the connection through the remote CP protocol, and the home agent 3100 may be configured to provide resources such as NAT information related to the remote control point. Returns this and informs the other remote control point of the fact, on the contrary, if the connection request is not confirmed, it is repeated from the initial stage described above.

또한, 도7에서 원격 컨트롤 포인트(320)에서의 UPnP 메시지 변환 과정을 도10의 동작 순서도를 참조하여 설명하기로 한다.In addition, the process of converting the UPnP message at the remote control point 320 in FIG. 7 will be described with reference to the operation flowchart of FIG. 10.

우선, 송신된 UPnP 패킷이 있는지 확인한다.First, check whether there is a UPnP packet transmitted.

만일, 수신된 UPnP 패킷이 있다고 확인되면 메시지 필터(322)를 통과시켜 메시지에 포함된 주소 정보를 변환한다. 주소 정보는 홈 네트워크에서 NAT 테이블에 디바이스 주소를 추가할 때마다 원격 컨트롤 포인트(320)로 전송된다.If it is confirmed that there is a received UPnP packet, the message filter 322 is passed to convert address information included in the message. The address information is sent to the remote control point 320 whenever a device address is added to the NAT table in the home network.

그리고, 송신된 UPnP 패킷이 확인될 때 유니캐스트 패킷이면 그대로 공중망으로 송신한다. 이는 유니캐스트 패킷의 주소가 홈 에이전트 외부에서 이미 외부 주소들로 변환되어 있기 때문이다. 원격 컨트롤 포인트(320)에서의 주소 변환은 도11의 예시도에 도시한 바와 같다.When the transmitted UPnP packet is confirmed, the unicast packet is transmitted to the public network as it is. This is because the address of the unicast packet is already translated to external addresses outside the home agent. Address translation at the remote control point 320 is as shown in the example diagram of FIG.

또한, 멀티캐스트 패킷인 경우 접속된 홈 에이전트와 인지된 다른 원격 컨트롤 포인트에 모두 복사본으로 전달한다. 이때, 유니캐스트 형태로 전달되므로 NAT 변환은 필수적이다. 이를위해 홈 에이전트(310)는 필요한 주소 정보, 원격 CP 정보 등을 원격 CP 프로토콜 데이터 저장부(314)에 저장하고 있다.Also, in case of multicast packet, it is delivered as a copy to both connected home agent and other recognized remote control point. At this time, since it is transmitted in unicast form, NAT conversion is essential. To this end, the home agent 310 stores the necessary address information, remote CP information, and the like in the remote CP protocol data storage unit 314.

그리고, 도7에서 원격 컨트롤 포인트(320)의 원격 CP 프로토콜 처리 과정을도11의 동작 순서도를 참조하여 설명하기로 한다.In FIG. 7, the remote CP protocol processing of the remote control point 320 will be described with reference to the operation flowchart of FIG.

우선, 프로토콜 메시지 유형을 판단한다. 원격 CP 프로토콜의 메시지 유형은 접속 개시 관련 메시지, 접속 종료 관련 메시지, 그리고 NAT 통보와 다른 원격 컨트롤 포인트의 접속에 관련한 정보 메시지로 분류할 수 있다.First, determine the protocol message type. Message types of the remote CP protocol may be classified into connection initiation related messages, connection termination related messages, and information messages related to NAT notification and access of other remote control points.

이때, 정보 메시지로 판단되면 NAT 통보가 있는지 판단한다.At this time, if it is determined that the information message is determined whether there is a NAT notification.

따라서, NAT 통보가 있는 경우 메시지 필터(322)에서의 메시지 수정을 위해 NAT 테이블에 기록한다.Therefore, if there is a NAT notification, it records in the NAT table for message modification in the message filter 322.

만일, NAT 통보가 없다면 다른 원격 컨트롤 포인트의 접속 통보인지를 판단한다. 이에 따라, 다른 원격 컨트롤 포인트의 접속 통보로 확인되면 그 원격 컨트롤 포인트 정보를 데이터 저장부(324)에 기록하며 반대로, 다른 원격 컨트롤 포인트의 접속 종료 통보로 확인되면 그 원격 컨트롤 포인트 정보를 데이터 저장부(324)에서 삭제한다.If there is no NAT notification, it is determined whether the connection notification of another remote control point. Accordingly, the remote control point information is recorded in the data storage unit 324 when the remote control point is confirmed by the access notification of the other remote control point. On the contrary, the remote control point information is recorded by the data storage unit when the remote control point is confirmed by the connection termination notification of the other remote control point. Delete at 324.

그리고, 프로토콜 메시지 유형이 접속 종료로 판단되면 접속 종료 메시지를 전달하고 응답이 오면 바로 종료시키거나 타임 아웃을 설정한다. 이때, 다른 컨트롤 포인트로도 접속 종료를 알린다.When the protocol message type is determined to be the end of the connection, the connection termination message is transmitted, and when a response is received, the connection is terminated immediately or a timeout is set. At this time, the other control point is also notified of the termination of the connection.

또한, 프로토콜 메시지 유형이 접속 개시로 확인되면 접속 요청하고 대기한다. 이후, 접속이 허가되면 사용할 유니캐스트 주소를 전달하고 홈 에이전트(310)로부터 인증되면 구성요소(component)를 다운로드함과 아울러 홈 에이전트(310)로부터 전달되는 정보 예를 들어, 홈 에이전트 주소, 멀티캐스트 포트번호, 다른 원격 컨트롤 포인트 정보 등을 데이터 저장부(324)에 저장한다.In addition, if the protocol message type is confirmed as connection initiation, a connection request is made and waits. Subsequently, when the connection is granted, the unicast address to be used is transmitted, and when the authentication is performed from the home agent 310, the component is downloaded and the information transmitted from the home agent 310 is, for example, the home agent address and multicast. The port number, other remote control point information, and the like are stored in the data storage unit 324.

상기에서 상세히 설명한 바와 같이 본 발명은 아래와 같은 효과를 달성할 수 있다.As described in detail above, the present invention can achieve the following effects.

첫째, 원격 컨트롤 포인트에 탑재된 UPnP CP 애플리케이션은 자신이 원격 접속된다는 사실을 인식하지 못하면서 동작 가능하다. 즉, 원격 컨트롤 포인트측의 UPnP API는 통상의 UPnP API와 완전 동일하며 하위 WAP 프로토콜에 독립적이다. 따라서, 본 발명은 원격 컨트롤 포인트에 탑재되는 홈 에이전트 접속 모듈이 UPnP CP 애플리케이션의 간섭 없이 자동으로 홈 에이전트에 접속하여 초기화함은 물론 UPnP CP 애플리케이션이 자신이 원격 컨트롤 포인트 상에서 동작한다는 사실을 알 수도 있으며 원격 접속 등에 관한 옵션을 선택할 수 있다.First, a UPnP CP application built into a remote control point can run without realizing that it is remotely connected. That is, the UPnP API on the remote control point side is exactly the same as the normal UPnP API and is independent of the lower WAP protocol. Therefore, the present invention may be aware that the home agent access module mounted on the remote control point automatically accesses and initializes the home agent without interference of the UPnP CP application, and the UPnP CP application operates on the remote control point. You can select options for remote access.

둘째, 주요 UPnP 기능을 원격 컨트롤 포인트에 탑재하여 홈 에이전트에는 기본적인 UPnP 기능만이 탑재되기 때문에 다양한 플랫폼 상에서 구현 가능하다. 따라서, 본 발명은 모듈로 구현할 경우 TV, 냉장고, 홈 인터넷 게이트웨이 등에 비교적 저렴한 비용으로 추가할 수 있다.Second, since the main UPnP function is installed in the remote control point, the home agent can be implemented on various platforms because only the basic UPnP function is installed. Therefore, when the present invention is implemented as a module, it can be added at a relatively low cost to a TV, a refrigerator, a home internet gateway, and the like.

세째, 원격 컨트롤 포인트의 기능이 가정 내의 컨트롤 포인트의 기능과 동일함으로 가정 내 디바이스의 세밀한 제어가 가능하다.Third, since the function of the remote control point is the same as that of the control point in the home, detailed control of the device in the home is possible.

넷째, 다중 원격 컨트롤 포인트를 지원함으로 임의의 원격 컨트롤 포인트를 이용하여 다수의 가정 예를 들면, 별장과 주거지에 설치된 디바이스를 동시에 제어할 수 있어 네트워크 확장이 가능하다.Fourth, by supporting multiple remote control points, it is possible to expand the network by controlling a number of devices, such as villas and residences at the same time by using any remote control point.

이와같은 효과를 발휘하는 본 발명은 UPnP 기반의 홈 네트워크 상에 적용할수 있음은 물론 UPnP 기반이 아닌 홈 네트워크 상에서도 기본 골격과 흐름을 적용할 수 있다. 즉, 어떤 종류의 홈 네트워크 표준이라도 발견, 제어, 이벤팅 메시지를 포함하며 멀티캐스트 메시지가 사용되는 경우가 많으므로 본 발명에서 제시된 방법들을 적용할 수 있다.The present invention exhibiting such an effect can be applied not only to a UPnP-based home network but also to a basic framework and flow on a UPnP-based home network. That is, any type of home network standard includes discovery, control, and event messages, and multicast messages are often used, so the methods proposed in the present invention can be applied.

Claims (10)

홈 에이전트와 원격 단말에 UPnP 기능을 분산하여 공중망에서 UPnP 메시지 교환이 가능하도록 구성하는 UPnP 네트워크 시스템에 있어서,In the UPnP network system configured to enable UPnP message exchange in the public network by distributing UPnP functions among home agents and remote terminals, 가정 내 HTTP 기반의 UPnP 디바이스와 멀티캐스트 방식으로 통신하는 홈 에이전트와,A home agent that multicasts with a home-based HTTP-based UPnP device, UPnP 스택과 WAP 프로토콜 처리에 의해 상기 홈 에이전트와 멀티캐스트 메시지를 교환하는 원격 컨트롤 포인트(Remote CP)와,A remote control point (Remote CP) for exchanging multicast messages with the home agent by UPnP stack and WAP protocol processing; 상기 홈 에이전트와 원격 컨트롤 포인트 사이에 위치하여 HTTP/TCP/IP 프로토콜과 WSP*/WTP/WDP 프로토콜 간의 변환을 수행하는 WAP 게이트웨이 수단을 구비하여 UPnP 프로토콜이 TCP/IP 스택 뿐만 아니라 WAP 스택 위에서도 동작하도록 구성함을 특징으로 하는 유피엔피(UPnP) 네트워크 상의 컨트롤 포인트 기능 분산 시스템.A WAP gateway means located between the home agent and the remote control point to perform conversion between the HTTP / TCP / IP protocol and the WSP * / WTP / WDP protocol so that the UPnP protocol can operate on the WAP stack as well as the TCP / IP stack. A distributed system of control point functions on a UPnP network characterized by a configuration. 제1항에 있어서, 홈 에이전트는The home agent of claim 1, wherein the home agent 가정 내에서 UPnP 디바이스가 DHCP나 AutoIP를 통해 동적으로 할당받은 IP 주소와 디바이스가 사용하는 포트 쌍(pair)들을 홈 에이전트의 외부 고정 IP와 포트 쌍으로 변환하며 원격 컨트롤 포인트의 외부 고정 IP와 포트를 가정 내의 동적 IP와 포트번호로 변환하는 네트워크 주소 변환(NAT)기와,In the home, the UPnP device converts the IP address dynamically assigned through DHCP or AutoIP and the port pairs used by the device to the external static IP and port pair of the home agent, and converts the external static IP and port of the remote control point. A network address translation (NAT) device that translates dynamic IP and port numbers in the home, 디바이스가 전송하는 멀티캐스트 메시지를 유니캐스트 메시지로 변환하는 멀티캐스트(Multicast)/유니캐스트(Unicast) 변환기와,A multicast / unicast converter that converts multicast messages sent by the device into unicast messages, NAT 테이블 엔트리를 원격 컨트롤 포인트로 전달, 초기화 과정의 원격 컨트롤 포인트 접속 및 인증을 위한 메시지 교환을 지원하는 원격 CP 프로토콜 처리부를 포함하여 구성함을 특징으로 하는 유피엔피(UPnP) 네트워크 상의 컨트롤 포인트 기능 분산 시스템.Distributed control point functions on the UPnP network, which includes a remote CP protocol processing unit that forwards NAT table entries to the remote control point, exchanges messages for remote control point access during initialization, and message exchange for authentication. system. 제2항에 있어서, 네트워크 주소 변환기는The network address translator of claim 2, wherein the network address translator is 디스커버리 메시지, 디바이스 디스크립션 메시지, 서비스 디스크립션 메시지에서 IP주소와 포트번호들을 수집하여 NAT 테이블 엔트리를 생성하도록 구성함을 특징으로 하는 유피엔피(UPnP) 네트워크 상의 컨트롤 포인트 기능 분산 시스템.A system for distributing control point functions on a UPnP network, characterized in that it collects IP addresses and port numbers from discovery messages, device description messages, and service description messages to generate NAT table entries. 제1항에 있어서, 원격 컨트롤 포인트는The method of claim 1 wherein the remote control point is 홈 에이전트로 전송하는 멀티캐스트 메시지를 유니캐스트 메시지로 변환하는 멀티캐스트/유니캐스트 변환기와,A multicast / unicast converter that converts multicast messages sent to home agents into unicast messages, IP 주소와 포트번호 변환을 위해 IP 주소와 포트번호를 포함하는 XML 디스크립션 문서를 포함하는 UPnP 메시지들을 수정하는 UPnP 메시지 필터와,A UPnP message filter that modifies UPnP messages containing an XML description document containing the IP address and port number for IP address and port number translation; 홈 에이전트로부터 NAT 테이블 엔트리를 수신, 초기화 과정에서 홈 에이전트 접속 및 인증을 위한 메시지 교환을 지원하는 원격 CP 프로토콜 처리부를 포함하여 구성함을 특징으로 하는 유피엔피(UPnP) 네트워크 상의 컨트롤 포인트 기능 분산 시스템.Receiving a NAT table entry from the home agent, including a remote CP protocol processing unit for supporting the exchange of messages for the home agent connection and authentication during the initialization process, characterized in that the control point function distributed system on the UPnP network. 제1항에 있어서, WAP 게이트웨이 수단은The method of claim 1, wherein the WAP gateway means 홈 에이전트와 UPnP/GENA, SSDP, SOAP/HTTP/TCP, UDP/IP 기반으로 통신하며, 원격 컨트롤 포인트와 UPnP/GENA, SSDP, SOAP/HTTP/WSP*/WTP/WDP 기반으로 통신하도록 구성함을 특징으로 하는 유피엔피(UPnP) 네트워크 상의 컨트롤 포인트 기능 분산 시스템.It communicates with home agent based on UPnP / GENA, SSDP, SOAP / HTTP / TCP, UDP / IP, and configures to communicate with remote control point based on UPnP / GENA, SSDP, SOAP / HTTP / WSP * / WTP / WDP. A distributed system of control point functions over a UPnP network. 제5항에 있어서, WSP*는The method of claim 5, wherein the WSP * HTTP와 WSP 간의 변환에 있어서 WSP가 UPnP에서 사용되는 헤더 중 지원하지 않는 일부 헤더를 지원하기 위해 메시지 헤더를 확장한 WSP 프로토콜임을 특징으로 하는 유피엔피(UPnP) 네트워크 상의 컨트롤 포인트 기능 분산 시스템.A control point function distribution system on a UPnP network, characterized in that the WSP protocol extends the message header to support some of the headers used in UPnP that are not supported in the conversion between HTTP and WSP. 제1항에 있어서, WAP 게이트웨이 수단은The method of claim 1, wherein the WAP gateway means 각각의 원격 컨트롤 포인트를 대표하는 IP 주소와 포트번호를 구비하며 이를 원격 컨트롤 포인트의 WSP/WDP 주소 및 포트번호로 변환하는 일종의 NAT(네트워크 주소 변환) 기능을 수행하도록 구성함을 특징으로 하는 유피엔피(UPnP) 네트워크 상의 컨트롤 포인트 기능 분산 시스템.It has a IP address and a port number representing each remote control point, and is configured to perform a kind of NAT (network address translation) function that converts the remote control point into a WSP / WDP address and a port number of the remote control point. (UPnP) Distributed control point function on a network. 제1항에 있어서, WAP 게이트웨이 수단은The method of claim 1, wherein the WAP gateway means 디바이스에서 전송하는 복제된 멀티캐스트 메시지를 NAT 테이블 엔트리를 참조하여 다수의 원격 단말로 동시에 전송하도록 구성함을 특징으로 하는 유피엔피(UPnP) 네트워크 상의 컨트롤 포인트 기능 분산 시스템.A control point function distribution system on a UPnP network, characterized in that it is configured to transmit a duplicated multicast message transmitted from a device to multiple remote terminals simultaneously by referring to a NAT table entry. 제1항에 있어서, WAP 게이트웨이 수단은The method of claim 1, wherein the WAP gateway means 임의의 원격 단말에서 전송되는 멀티캐스트 메시지를 홈 에이전트로 전송하고 동시에 그 멀티캐스트 메시지를 NAT 테이블을 참조하여 다른 다수의 원격 단말로 전송하도록 구성함을 특징으로 하는 유피엔피(UPnP) 네트워크 상의 컨트롤 포인트 기능 분산 시스템.Control point on a UPnP network, characterized in that it is configured to transmit a multicast message transmitted from any remote terminal to the home agent and simultaneously transmit the multicast message to a plurality of other remote terminals by referring to the NAT table. Functional distribution system. 가정 내 HTTP 기반의 UPnP 디바이스와 멀티캐스트 방식으로 통신하는 홈 에이전트와, UPnP 스택과 WAP 프로토콜 처리에 의해 상기 홈 에이전트와 멀티캐스트 메시지를 교환하는 원격 컨트롤 포인트(Remote CP)와, 상기 홈 에이전트와 원격 컨트롤 포인트 사이에 위치하여 HTTP/TCP/IP 프로토콜과 WSP*/WTP/WDP 프로토콜 간의 변환을 수행하는 WAP 게이트웨이 수단을 구비하여 UPnP 프로토콜이 TCP/IP 스택 뿐만 아니라 WAP 스택 위에서도 동작하도록 구성하는 UPnP 네트워크 시스템에 있어서,A home agent that communicates multicastly with a home-based HTTP-based UPnP device, a remote control point (Remote CP) that exchanges multicast messages with the home agent by a UPnP stack and WAP protocol processing, and a remote control point with the home agent The UPnP network system, which is located between control points and has a WAP gateway means for converting between the HTTP / TCP / IP protocol and the WSP * / WTP / WDP protocols so that the UPnP protocol operates on the WAP stack as well as the TCP / IP stack. To 상기 홈 에이전트는The home agent 가정 내에서 UPnP 디바이스가 DHCP나 AutoIP를 통해 동적으로 할당받은 IP 주소와 디바이스가 사용하는 포트 쌍(pair)들을 홈 에이전트의 외부 고정 IP와 포트 쌍으로 변환하며 원격 컨트롤 포인트의 외부 고정 IP와 포트를 가정 내의 동적IP와 포트번호로 변환하는 네트워크 주소 변환(NAT)기와, 디바이스가 전송하는 멀티캐스트 메시지를 유니캐스트 메시지로 변환하는 멀티캐스트(Multicast)/유니캐스트(Unicast) 변환기를 포함하여 구성하고,In the home, the UPnP device converts the IP address dynamically assigned through DHCP or AutoIP and the port pairs used by the device to the external static IP and port pair of the home agent, and converts the external static IP and port of the remote control point. Network address translation (NAT) that translates into dynamic IP and port numbers in the home, and multicast / unicast converters that convert multicast messages sent by devices into unicast messages, 상기 원격 컨트롤 포인트는The remote control point 홈 에이전트로 전송하는 멀티캐스트 메시지를 유니캐스트 메시지로 변환하는 멀티캐스트/유니캐스트 변환기를 포함하여 구성하며,It includes a multicast / unicast converter that converts multicast messages sent to home agents into unicast messages. 상기 WAP 게이트웨이 수단은The WAP gateway means 메시지 내의 URL 주소만을 인식하는 UPnP 메시지 필터와, 홈 에이전트로부터 NAT 테이블 엔트리를 수신, 초기화 과정에서 홈 에이전트와 원격 컨트롤 포인트 간의 접속 및 인증을 위한 메시지 교환을 지원하는 원격 CP 프로토콜 처리부를 포함하여 구성함을 특징으로 하는 유피엔피(UPnP) 네트워크 상의 컨트롤 포인트 기능 분산 시스템.It includes UPnP message filter that recognizes only URL address in message and remote CP protocol processing unit that receives NAT table entry from home agent and supports message exchange for connection and authentication between home agent and remote control point during initialization. A distributed control point function distribution system on a UPnP network.
KR1020030003369A 2003-01-17 2003-01-17 Control point function destribution system on universal plug and play network KR20040066337A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020030003369A KR20040066337A (en) 2003-01-17 2003-01-17 Control point function destribution system on universal plug and play network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020030003369A KR20040066337A (en) 2003-01-17 2003-01-17 Control point function destribution system on universal plug and play network

Publications (1)

Publication Number Publication Date
KR20040066337A true KR20040066337A (en) 2004-07-27

Family

ID=37435394

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030003369A KR20040066337A (en) 2003-01-17 2003-01-17 Control point function destribution system on universal plug and play network

Country Status (1)

Country Link
KR (1) KR20040066337A (en)

Similar Documents

Publication Publication Date Title
JP4041118B2 (en) Gateway device, network system, communication program, and communication method
EP1753180B1 (en) Server for routing a connection to a client device
US7292859B2 (en) Apparatus and method for managing device information through networks
EP1441483B1 (en) Gateway for supporting communications between network devices of different private networks
EP2448185B1 (en) Internet connection system and server for routing connections to client device
KR100818809B1 (en) Universal plug-and-play upnp mirroring device
KR100796865B1 (en) Mobile Terminal, System and Method for connecting Network by using the same
KR101028138B1 (en) A method for assigning address to the intelligent information household appliance and the sub-equipment in the household network
US20020040397A1 (en) IP based network system and networking method thereof
KR20090104624A (en) UPnP apparatus for resolving network address collision to consider remote access and method thereof
CN101702718A (en) Method and device for managing user terminal equipment
JPWO2007136101A1 (en) Communication module and application program including this communication module
KR100906677B1 (en) Secure remote access system and method for universal plug and play
KR100429902B1 (en) Apparatus and method for controlling devices in private network from public network
US9531561B2 (en) Apparatus and method for extending network area
US20050111486A1 (en) Device and method for controlling network devices located within private networks
WO2009154249A1 (en) Remote access system, device, method and program
KR100455125B1 (en) Control point function destribution system on universal plug and play network
KR100736037B1 (en) SYSTEM AND METHOD FOR EXPANDING UPnP FUNTION
KR20040066337A (en) Control point function destribution system on universal plug and play network
KR20040055446A (en) Control point and cognition method among control points
KR101614548B1 (en) Method and apparatus for preventing ip address conflict in remote access service
KR20050107891A (en) Method for communicating between network devices
Nakamura et al. Caching method to increase the speed of UPnP gateway
KR20120025661A (en) Control point and home gateway for receiving event provided from device in remote place

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid