KR101394609B1 - Control point and home gateway for receiving event provided from device in remote place - Google Patents

Control point and home gateway for receiving event provided from device in remote place Download PDF

Info

Publication number
KR101394609B1
KR101394609B1 KR1020100087646A KR20100087646A KR101394609B1 KR 101394609 B1 KR101394609 B1 KR 101394609B1 KR 1020100087646 A KR1020100087646 A KR 1020100087646A KR 20100087646 A KR20100087646 A KR 20100087646A KR 101394609 B1 KR101394609 B1 KR 101394609B1
Authority
KR
South Korea
Prior art keywords
address
home gateway
control point
event
callback
Prior art date
Application number
KR1020100087646A
Other languages
Korean (ko)
Other versions
KR20120025661A (en
Inventor
김병재
안정균
박성수
김근영
Original Assignee
주식회사 케이티
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 케이티 filed Critical 주식회사 케이티
Priority to KR1020100087646A priority Critical patent/KR101394609B1/en
Publication of KR20120025661A publication Critical patent/KR20120025661A/en
Application granted granted Critical
Publication of KR101394609B1 publication Critical patent/KR101394609B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/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
    • 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/2517Translation of Internet protocol [IP] addresses using port numbers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Automation & Control Theory (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

본 발명의 실시예에 따르면, 사설망에 위치하는 컨트롤 포인트는 원격지에 위치한 디바이스로부터 이벤트를 수신하기 위한 콜백 접속 주소를 원격지에 위치한 디바이스에게 등록한다.
이때, 콜백 접속 주소가 사설 IP 주소로 되어 있는 경우, 콜백 접속 주소는 컨트롤 포인트와 연결된 홈 게이트웨이의 공인 IP 주소 및 홈 게이트웨이에 의해 포트 포워딩 설정된 외부 포트 번호로 변경되어 등록된다.
According to an embodiment of the present invention, a control point located in a private network registers a callback access address for receiving an event from a device located at a remote location to a device located at a remote location.
At this time, if the callback access address is a private IP address, the callback access address is changed to the public IP address of the home gateway connected to the control point and the external port number set for port forwarding by the home gateway.

Figure R1020100087646
Figure R1020100087646

Description

원격지에 위치하는 디바이스가 제공하는 이벤트를 수신하기 위한 컨트롤 포인트 및 홈 게이트웨이{CONTROL POINT AND HOME GATEWAY FOR RECEIVING EVENT PROVIDED FROM DEVICE IN REMOTE PLACE}BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a control point and a home gateway for receiving an event provided by a device located at a remote location,

본 발명은 원격지에 위치하는 디바이스가 제공하는 이벤트를 수신하기 위한 컨트롤 포인트 및 홈 게이트웨이에 관한 것이다.The present invention relates to a control point and a home gateway for receiving events provided by a device located at a remote location.

일반적으로, 홈 네트워크는 IP(Internet Procotol) 기반의 사설망으로 이루어진다. 이러한 홈 네트워크는 댁내에서 사용되는 다양한 형태의 디바이스들을 미들웨어(middleware)라 불리는 공통의 가상 컴퓨팅 환경을 통해 하나의 네트워크로 연결하여 통제한다. 여기서, 미들웨어란 다양한 디지털 기기들을 피어-투-피어(peer-to-peer) 방식으로 연결하여 기기들 간의 통신이 가능하도록 하는 것으로, HAVI(Home AV Interoperability), UPnP(Universal Plug and Play control device), Jini(Java Intelligent Network Infra-structure), HWW(Home Wide Web) 등이 현재까지 제안되어 있다.In general, a home network is made up of an IP (Internet Procotol) -based private network. Such a home network connects various types of devices used in the home by a single network through a common virtual computing environment called middleware. Middleware refers to a home AV interoperability (HAVI), a universal plug and play control device (UPnP), and the like, which enable communication between devices by connecting various digital devices in a peer-to-peer manner. , Java Intelligent Network Infrastructure (Jini), and Home Wide Web (HWW).

특히, UPnP는 TCP/IP(transmission control protocol/internet protocol), HTTP(hypertext transfer protocol) 및 XML(extensible markup language)과 같은 인터넷 표준 기술을 기반으로 홈 네트워크 내에 위치한 장치들 간의 통신에 사용되는 IP 기반의 표준 프로토콜 기술이다.In particular, UPnP is an IP-based (Internet Protocol) protocol used for communication between devices located in a home network based on internet standard technologies such as transmission control protocol / internet protocol (TCP / IP), hypertext transfer protocol (HTTP) and extensible markup language Standard protocol technology.

한편, 원격지에 위치한 디바이스에도 마치 홈 네트워크에 위치한 것과 동일한 기능을 제공하기 위한 UPnP 원격 접속(Remote Access, 이하, 'RA'라 통칭함) 1.0 기술에 대한 표준화가 완료되었다.Meanwhile, standardization of a UPnP remote access (hereinafter referred to as 'RA') 1.0 technology for providing the same function as located in a home network has been completed for a device located at a remote location.

도 1은 종래의 UPnP(Universal Plug and Play) RA 아키텍쳐(Architecture)를 나타낸 블록도이다. 이때, 도 1의 UPnP 원격 접속 아키텍쳐는 UPnP 포럼(Forum)의 Remote Access Architecture v1.0 문서에서 인용하였다.1 is a block diagram illustrating a conventional Universal Plug and Play (UPnP) RA architecture. At this time, the UPnP remote access architecture of FIG. 1 is cited in the UPnP Forum's Remote Access Architecture v1.0 document.

도 1을 참조하면, 원격 접속 클라이언트(Remote Access Client, 이하, RAC라 통칭함)(100) 및 원격 접속 서버(Remote Access Server, 이하, RAS라 통칭함)(200)는 공통적으로 RADA(Remote Access Discovery Agent)(110, 210)를 포함하며, 각각 RAC(120) 및 RAS(220)를 포함한다.Referring to FIG. 1, a remote access client (RAC) 100 and a remote access server (RAS) 200 are commonly connected to a remote access server Discovery Agent) 110 and 210, and includes RAC 120 and RAS 220, respectively.

RADA(110, 210)는 내부의 RADASync(112, 211)와 RADASync CP(113, 212)를 통해 RAC(100)가 가지고 있는 UPnP 장치 목록과 RAS(200)가 속해 있는 홈 네트워크 상에 동작하는 UPnP 장치 목록을 동기화한다. 그리고 자신이 속한 홈 네트워크 상의 UPnP CP가 원격 네트워크 상의 UPnP 디바이스를 발견할 수 있도록 SSDP(Simple Service Discovery Protocol) 메시지를 처리한다.The RADAs 110 and 210 are connected to the UPnP device list of the RAC 100 through the RADASync 112 and 211 and the RADASync CPs 113 and 212 and the UPnP devices 100 and 210 operating on the home network to which the RAS 200 belongs, Synchronize device list. And processes a Simple Service Discovery Protocol (SSDP) message so that the UPnP CP on the home network to which the UPnP CP belongs can discover the UPnP device on the remote network.

여기서, RAC(100)의 RADA(110), RAC(120) 및 RAS(200)의 RADA(210)는 UPnP 디바이스를 나타낸다. 그리고 RAC(100)의 RADASync CP(113), RAS(200)의 RADASync CP(212)는 원격 접속 관련 UPnP 컨트롤 포인트(CP)를 나타내며, 컨트롤 포인트는 UPnP 디바이스에 포함되지 않는다.Here, the RADA 110 of the RAC 100, the RAC 120, and the RADA 210 of the RAS 200 represent a UPnP device. The RADASync CP 113 of the RAC 100 and the RADASync CP 212 of the RAS 200 represent a remote connection related UPnP control point CP and the control point is not included in the UPnP device.

또한, RAC(100)의 RADASync(112), RATAConfig(121), RAS(200)의 Inbound Connection Config(221), RADAConfig(223), RATAConfig(224)는 원격 접속 관련 UPnP 서비스(Service)를 나타낸다. RAC(100) 및 RAS(200)는 RADA와 RATA에 대한 기능 설정을 위해 RADA Config(223)와 RATA Config(121, 224) 서비스를 제공한다. 이때, RATA는 RA 트랜스포트(Transport) 채널을 생성하여 RAC(100)와 RAS(200) 간의 통신 채널을 제공하고, RADA는 원격지 간의 정보 동기화, 즉 로컬 사이트에 위치한 UPnP 디바이스들에 대한 정보를 원격지에 그대로 재현해내는 역할을 담당한다.The RADASync 112, the RATAConfig 121 and the inbound connection config 221 of the RAC 100, the RADAConfig 223 and the RATAConfig 224 of the RAC 100 represent a remote connection related UPnP service. The RAC 100 and the RAS 200 provide the RADA Config 223 and the RATA Config 121 and 224 services for setting the functions for the RADA and the RATA. At this time, the RATA generates a RA transport channel to provide a communication channel between the RAC 100 and the RAS 200, and the RADA performs information synchronization between remote sites, that is, information about UPnP devices located at the local site, And it plays a role to reproduce it as it is.

또한, RADA Listener/Relay(111, 222)는 RADA(Remote Access Discovery Agent)(110, 210)의 서포트 컴포넌트(Support Component)를 의미하며, CP(130) 및 Device(140)는 원격 접속과는 관련 없는 UPnP CP, 디바이스를 나타낸다.In addition, the RADA Listener / Relay 111 and 222 are support components of Remote Access Discovery Agents (RADA) 110 and 210, and the CP 130 and the Device 140 are related to remote access Indicates a UPnP CP and a device that do not exist.

또한, RAS(200)는 원격지에서 들어오는 연결 요청 처리를 설정하기 위한 Inbound Connection Config(221) 서비스를 제공한다. 이때, RATA Config, RADA Config 및 Inbound Connection Config 서비스는 댁내에 위치한 별도의 관리 콘솔 디바이스(400)를 통해 호출된다. 또한, 홈 디바이스(300)와 RA 관리 콘솔(RA Management Console)(400)은 LAN으로 RAS(200)에 연결된다.In addition, the RAS 200 provides an Inbound Connection Config (221) service for establishing connection request processing from a remote location. At this time, the RATA Config, the RADA Config, and the Inbound Connection Config service are called through a separate management console device 400 located in the house. Also, the home device 300 and the RA management console 400 are connected to the RAS 200 via a LAN.

상술한 RAC(100)는 원격 단말에 필요한 기능이고, RAS(200)는 댁내 단말에 필요한 기능이고, 원격 단말은 댁내에 위치한 RAS(200)로의 접속을 통해 댁내에 위치한 UPnP 디바이스들의 서비스를 제공받을 수 있다.The RAC 100 is a function required for the remote terminal. The RAS 200 is a function required for the home terminal, and the remote terminal can receive services of UPnP devices located in the home through the connection to the home RAS 200 .

여기서, 댁내에 위치한 UPnP 디바이스들은 SSDP 메시지를 이용하여 자신의 존재를 RAS(200)에 알리고 RAS는 이를 AddRemoteDevices()와 같은 RADASync 서비스 액션을 이용해 원격 단말에 전달한다. 그리고 원격 단말은 AddRemoteDevices() 서비스 액션을 통해 전달된 정보를 SSDP 메시지로 변환하여 원격 단말이 속한 랜에 다시 멀티캐스트 송신한다. 이러한 과정을 통하여 원격 단말이 속한 랜 상의 UPnP 디바이스 들도 RAS가 속한 랜 상의 UPnP 디바이스들이 제공하는 서비스들을 제공받을 수 있다.Here, the UPnP devices located in the house inform the RAS 200 of its existence using the SSDP message, and the RAS transmits it to the remote terminal using the RADASync service action such as AddRemoteDevices (). Then, the remote terminal converts the information transmitted through the AddRemoteDevices () service action into an SSDP message and multicasts it to the LAN to which the remote terminal belongs. Through this process, the UPnP devices on the LAN to which the remote terminal belongs can also be provided with the services provided by the UPnP devices on the LAN to which the RAS belongs.

예컨대, 원격 단말이 속한 랜을 홈 A라 가정하고 댁내 단말이 속한 랜을 홈 B라고 가정했을 경우, 홈 A에 위치한 UPnP 미디어 렌더러는 홈 B에 위치한 미디어 서버의 영상 콘텐츠를 검색하고 스트리밍 형태로 재생 시킬 수 있는 것이다.For example, assuming that the LAN to which the remote terminal belongs is the home A and the LAN to which the home terminal belongs is the home B, the UPnP media renderer located in the home A searches the image content of the media server located in the home B, It can be done.

그런데 홈 A와 B가 사설망인 경우, 홈 A의 기기에 대한 주소 정보가 홈 B로 전달되었을 때 홈 B에도 동일한 주소를 사용하는 경우 IP 주소 충돌 문제가 발생할 수 있으므로 정상적인 통신 서비스의 제공이 불가능해지는 문제가 발생한다. However, when the home addresses A and B are private networks, when the address information of the device of the home A is transferred to the home B, if the same address is used in the home B, an IP address collision problem may occur. A problem arises.

물론, RA 표준 1.0 기술에서는 원격 단말과 RAS가 위치한 댁내와의 접속을 VPN(virtual private network)을 통해 구현하는 내용이 명시되어 있으나 VPN을 설정한 경우 원격 단말이 속한 랜과 RAS가 속한 랜이 논리적으로 합쳐져서 하나의 랜으로 구성되는 결과를 가져오게 되므로 두 랜간의 IP 충돌 문제를 해결할 수 없기는 마찬가지다.Of course, in RA standard 1.0 technology, it is stated that the connection between the remote terminal and the home where the RAS is located is implemented through a VPN (virtual private network). However, if the VPN is configured, the LAN to which the remote terminal belongs and the LAN to which the RAS belongs are logical And the result is that it consists of one LAN so that the IP conflict between the two LANs can not be solved.

이러한 문제를 해결하기 위하여 종래에 응용 계층 게이트웨이(Application Level Gateway, 이하 ALG)방식이 제안되었다.To solve this problem, an application level gateway (ALG) method has been proposed.

ALG 방식에 따르면, SSDP 메시지의 'LOCATION 필드'는 URL (uniform resource locator) 정보를 포함하여야 하나 사설 IP가 수록되는 경우 원격지에서 해당 URL로 접근이 안되므로 ALG(Application Layer Gateway) 처리를 하도록 되어 있다. 구체적으로, RAS는 SSDP M-SEARCH 메시지를 댁내로 멀티캐스트 송신하여 UPnP 디바이스를 검색한다. 그러면, UPnP 디바이스는 HTTP 200 OK 메시지로 응답한다. 이때, RAS는 HTTP 200 OK 메시지에 수록된 UPnP 디바이스의 접속 주소가 사설 주소일 경우, RAS의 공인 IP와 원격 단말과의 통신을 위한 대체 포트 정보로 변경함으로써 IP 주소 충돌과 같은 문제가 발생하지 않게 한다. According to the ALG method, the 'LOCATION field' of the SSDP message must include URL (uniform resource locator) information. However, when private IP is recorded, the application layer gateway (ALG) process is performed because the URL can not be accessed from the remote site. Specifically, the RAS multicasts the SSDP M-SEARCH message to the home to retrieve the UPnP device. The UPnP device then responds with an HTTP 200 OK message. At this time, if the connection address of the UPnP device included in the HTTP 200 OK message is a private address, the RAS changes the public IP of the RAS to the alternative port information for communication with the remote terminal, thereby preventing a problem such as IP address collision .

하지만, 컨트롤 포인트는 UPnP 디바이스가 아니므로, RAS가 댁내 UPnP 장치에 대한 검색을 수행해도 응답하지 않는다. 따라서, RAS는 댁내에 컨트롤 포인트가 존재하는지 확인할 방법이 없으므로, ALG 기능을 컨트롤 포인트에는 적용할 수가 없다.However, since the control point is not a UPnP device, the RAS does not respond even if it searches the home UPnP device. Therefore, there is no way to check if there is a control point in the house, so the ALG function can not be applied to the control point.

그러나 UPnP 디바이스는 컨트롤 포인트로부터 서비스 호출을 받고 그 결과를 전달하는 과정 외에도 상태 변화가 발생했을 경우 이를 알리는 이벤트를 컨트롤 포인트에 통지하는 기능을 가지고 있다. 이때, 이벤트 통지에 앞서 컨트롤 포인트는 이벤트 수신을 위한 콜백 접속 주소를 UPnP 디바이스에 등록해야 한다. However, the UPnP device has the function of notifying the control point of an event notifying the change of state in addition to the process of receiving the service call from the control point and transmitting the result of the service call. At this time, prior to the event notification, the control point must register the callback access address for receiving the event to the UPnP device.

그런데, 종래와 같이 ALG 기능을 컨트롤 포인트에 적용하지 않을 경우, 사설 IP 주소 및 포트 번호가 콜백 접속 주소로 등록되어 문제가 발생한다. 이를 도 2를 통해 나타내면 다음과 같다.However, when the ALG function is not applied to the control point as in the prior art, a problem occurs because the private IP address and the port number are registered as callback access addresses. This is shown in FIG. 2 as follows.

도 2는 종래에 컨트롤 포인트가 원격지에 위치하는 디바이스로부터 이벤트를 수신하는 과정을 설명하기 위한 도면이다.FIG. 2 is a view for explaining a process of receiving an event from a device located at a remote place in a conventional control point.

도 2를 참조하면, 제1 UPnP 네트워크(500)는 RAS 기능이 구비된 홈 게이트웨이(501), 홈 게이트웨이(510)에 연결되어 제2 UPnP 디바이스(603)와 통신하는 제1 UPnP 디바이스(503) 및 컨트롤 포인트(505)를 포함한다.2, the first UPnP network 500 includes a home gateway 501 having a RAS function, a first UPnP device 503 connected to the home gateway 510 and communicating with the second UPnP device 603, And a control point 505.

제2 UPnP 네트워크(600)는 RAC 기능이 구비된 홈 게이트웨이(601), 홈 게이트웨이(601)에 연결되어 제1 UPnP 디바이스(503)와 통신하고, 컨트롤 포인트(505)의 제어를 받는 제2 UPnP 디바이스(603)를 포함한다.The second UPnP network 600 is connected to the home gateway 601 having the RAC function and the home gateway 601 and communicates with the first UPnP device 503 and is connected to the second UPnP Device 603.

이때, 제1 UPnP 네트워크(500) 및 제2 UPnP 네트워크(600)는 사설 IP 주소를 사용하는 사설망이다. In this case, the first UPnP network 500 and the second UPnP network 600 are private networks using private IP addresses.

여기서, 제1 UPnP 네트워크(500)에 위치하는 컨트롤 포인트(505)는 사설 IP 주소 및 포트 번호 즉 예를 들어 192.168.1.1 및 9000를 이용하여 생성한 콜백 접속 주소가 포함된 이벤트 수신 등록 메시지(SUSCRIBE)를 제2 UPnP 디바이스(603)에 전송한다.Here, the control point 505 located in the first UPnP network 500 receives an event reception registration message (SUSCRIBE) including a callback access address generated using a private IP address and a port number, for example, 192.168.1.1 and 9000 ) To the second UPnP device 603.

제2 UPnP 디바이스(603)는 서비스 상태 변화가 발생하는 경우, 이를 알리는 이벤트를 통지하기 위해 이벤트 수신 등록 메시지(SUSCRIBE)에 포함된 콕백 접속 주소 즉 192.168.1.1 및 9000으로 접속을 시도한다. When the service state change occurs, the second UPnP device 603 tries to connect with the coincide connection addresses included in the event reception registration message (SUSCRIBE), that is, 192.168.1.1 and 9000, to notify the event.

그러나, 192.168.1.1가 사설 IP 주소이므로 공중 IP 망을 이용해서는 패킷 라우팅이 불가능하여 결국 이벤트 통지가 이루어지지 않게 된다.However, because 192.168.1.1 is a private IP address, it is impossible to route packets using the public IP network, so that event notification is not performed.

따라서, 본 발명이 이루고자 하는 기술적 과제는 사설망에 위치하는 컨트롤 포인트가 원격지에 위치하는 UPnP 디바이스로부터 이벤트를 수신할 수 있게 하는 구성을 포함하는 컨트롤 포인트 및 홈 게이트웨이를 제공하는 것이다.SUMMARY OF THE INVENTION Accordingly, it is an object of the present invention to provide a control point and a home gateway including a configuration for allowing a control point located in a private network to receive an event from a UPnP device located at a remote location.

본 발명의 한 특징에 따르면 컨트롤 포인트가 제공된다. 이 장치는, 원격지에 위치한 디바이스로부터 서비스의 상태 변화를 알리는 이벤트를 수신하는 컨트롤 포인트에 있어서, 상기 컨트롤 포인트가 사설 주소 정보를 할당받은 경우, 상기 컨트롤 포인트와 연결된 홈 게이트웨이로부터 획득한 공인 주소 정보를 이용하여 상기 이벤트를 수신하기 위한 콜백 접속 주소를 변경하는 변환부; 및 상기 콜백 접속 주소가 포함된 이벤트 수신 등록 메시지를 상기 홈 게이트웨이를 통하여 상기 디바이스에게 전송하는 전송부를 포함하고, 상기 디바이스는 상기 이벤트 수신 등록 메시지에 포함된 콜백 접속 주소로 접속을 시도하여 상기 이벤트를 통지한다.According to an aspect of the invention, a control point is provided. The control point is a control point for receiving an event notifying a change in service status from a device located at a remote location. When the control point is assigned private address information, the control point acquires public address information acquired from a home gateway connected to the control point A callback access address for receiving the event; And a transmitter for transmitting an event reception registration message including the callback access address to the device through the home gateway, wherein the device attempts to access the callback access address included in the event reception registration message, Notify.

본 발명의 다른 특징에 따르면 홈 게이트웨이가 제공된다. 이 장치는, 제1 홈 네트워크에 속하는 컨트롤 포인트와, 제2 홈 네트워크에 속하는 원격 디바이스 간에 원격 접속을 지원하는 상기 제1 홈 네트워크에 속하는 홈 게이트웨이에 있어서, 상기 컨트롤 포인트로부터 이벤트 수신 등록 메시지-여기서 이벤트 수신 등록 메시지는 상기 원격 디바이스가 제공하는 서비스의 상태 변화를 알리는 이벤트를 수신하기 위한 콜백 접속 주소를 포함함-에 포함된 상기 콜백 접속 주소에 대해 포트 포워딩을 설정하는 설정부; 상기 콜백 접속 주소를 상기 홈 게이트웨이의 공인 IP 주소 및 상기 설정부에 의해 포트 포워딩 설정된 포트 번호로 변경하는 변환부; 및 상기 변환부에 의해 변경된 콜백 접속 주소를 상기 이벤트 수신 등록 메시지에 포함시켜 상기 원격 디바이스에게 전송하는 전송부를 포함하고, 상기 원격 디바이스는 서비스 상태 변화가 발생하는 경우, 상기 이벤트 수신 등록 메시지에 포함된 콜백 접속 주소로 접속을 시도하여 상기 이벤트를 통지한다.According to another aspect of the present invention, a home gateway is provided. The apparatus comprises: a home gateway belonging to the first home network supporting remote access between a control point belonging to a first home network and a remote device belonging to a second home network, the home gateway comprising: Wherein the event reception registration message includes a callback access address for receiving an event notifying a change in the status of a service provided by the remote device; a setting unit for setting port forwarding for the callback access address included in the callback access address; A converting unit for changing the callback access address to a public IP address of the home gateway and a port number set by the setting unit; And a transmitting unit for transmitting a callback access address changed by the converting unit to the remote device by including the callback connection address in the event reception registration message, and when the service state change occurs, It tries to connect to the callback connection address and notifies the event.

본 발명의 실시예에 따르면, 사설망에 위치한 컨트롤 포인트가 원격지 UPnP 디바이스로부터 이벤트 통지를 정상적으로 수신할 수 있다.According to an embodiment of the present invention, a control point located in a private network can normally receive event notification from a remote UPnP device.

도 1은 종래의 UPnP(Universal Plug and Play) 원격 접속(Remote Access) 아키텍쳐(Architecture)를 나타낸 블록도이다.
도 2는 종래에 컨트롤 포인트가 원격지에 위치하는 디바이스로부터 이벤트를 수신하는 과정에서 발생하는 문제점을 설명하기 위한 도면이다.
도 3은 본 발명의 하나의 실시예에 따른 UPnP 원격 접속 네트워크 구성도이다.
도 4는 도 3의 구성에 따른 컨트롤 포인트가 원격지에 위치하는 디바이스로부터 이벤트를 수신하는 과정을 나타낸 흐름도이다.
도 5는 본 발명의 다른 실시예에 따른 UPnP 원격 접속 네트워크 구성도이다.
도 6은 도 5의 구성에 따른 컨트롤 포인트가 원격지에 위치하는 디바이스로부터 이벤트를 수신하는 과정을 나타낸 흐름도이다.
1 is a block diagram illustrating a conventional Universal Plug and Play (UPnP) Remote Access Architecture.
FIG. 2 is a view for explaining a problem that occurs in the process of receiving an event from a device located at a remote place in a conventional control point.
3 is a block diagram of a UPnP remote access network according to an embodiment of the present invention.
4 is a flowchart illustrating a process of receiving an event from a device located at a remote location by a control point according to the configuration of FIG.
5 is a block diagram of a UPnP remote access network according to another embodiment of the present invention.
6 is a flowchart illustrating a process of receiving an event from a device located at a remote location by a control point according to the configuration of FIG.

아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art can easily carry out the present invention. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. In order to clearly illustrate the present invention, parts not related to the description are omitted, and similar parts are denoted by like reference characters throughout the specification.

명세서 전체에서, 어떤 부분이 어떤 구성 요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다.Throughout the specification, when an element is referred to as "comprising ", it means that it can include other elements as well, without excluding other elements unless specifically stated otherwise.

그러면, 도면을 참조로 하여 본 발명의 실시예에 따른 원격지에 위치하는 디바이스가 제공하는 이벤트를 수신하기 위한 컨트롤 포인트 및 홈 게이트웨이에 대하여 상세히 설명한다.Hereinafter, a control point and a home gateway for receiving an event provided by a device located at a remote location according to an embodiment of the present invention will be described in detail with reference to the drawings.

여기서, 본 발명은 두 가지 실시예로 나타낼 수 있으며, 도 3 및 도 4는 제1 실시예에 해당되고, 도 5 및 도 6은 제2 실시예에 해당된다.
Here, the present invention can be represented by two embodiments. Figs. 3 and 4 correspond to the first embodiment, and Figs. 5 and 6 correspond to the second embodiment.

<제1 실시예>&Lt; Embodiment 1 >

먼저, 도 3은 본 발명의 하나의 실시예에 따른 UPnP(Universal Plug and Play) 원격 접속 네트워크 구성도이다.3 is a block diagram of a Universal Plug and Play (UPnP) remote access network according to an embodiment of the present invention.

도 3을 참조하면, 제1 범용 플러그 앤 플레이(Universal Plug and Play Device, 이하 'UPnP'라 통칭함) 네트워크(800) 및 제2 UPnP 네트워크(900)는 인터넷 망(1000)을 통해 통신한다.Referring to FIG. 3, a first universal plug and play (UPnP) network 800 and a second UPnP network 900 communicate over the Internet 1000.

제1 UPnP 네트워크(800)는 원격 접속 서버(Remote Access Server, 이하 'RAS'라 통칭함)의 기능을 포함하는 제1 홈 게이트웨이(810), 제1 UPnP 디바이스(820) 및 컨트롤 포인트(Control Point)(830)를 포함한다.The first UPnP network 800 includes a first home gateway 810 including a function of a remote access server (hereinafter referred to as RAS), a first UPnP device 820, 830 &lt; / RTI &gt;

또한, 제2 UPnP 네트워크(900)는 원격 접속 클라이언트(Remote Access Client, 이하 'RAC'라 통칭함)의 기능을 포함하는 제2 홈 게이트웨이(910) 및 제2 UPnP 디바이스(920)를 포함한다.The second UPnP network 900 includes a second home gateway 910 and a second UPnP device 920 that include the functions of a remote access client (RAC).

여기서, RAS 또는 RAC는 원격 접속 서비스를 지원하기 위한 논리적인 장치를 의미하며, 제1 홈 게이트웨이(810) 및 제2 홈 게이트웨이(910)에 포함되는 기능으로 기재하였으나 별도의 장치로 존재할 수 있다.Here, the RAS or RAC is a logical device for supporting a remote access service, and is described as a function included in the first home gateway 810 and the second home gateway 910, but may exist as a separate device.

제1 UPnP 네트워크(800)는 임의의 홈 네트워크이며, 제2 UPnP 네트워크(900)는 제1 UPnP 네트워크(800)로부터 떨어져 있는 원격 홈 네트워크를 의미한다.The first UPnP network 800 is an arbitrary home network and the second UPnP network 900 is a remote home network remote from the first UPnP network 800. [

또한, 제1 홈 게이트웨이(810) 및 제2 홈 게이트웨이(910)는 제1 UPnP 네트워크(800)와 제2 UPnP 네트워크(900) 간의 원격 접속을 지원한다. In addition, the first home gateway 810 and the second home gateway 910 support remote connection between the first UPnP network 800 and the second UPnP network 900.

즉 제1 홈 게이트웨이(810) 및 제2 홈 게이트웨이(910)는 제1 UPnP 네트워크(800) 및 제2 UPnP 네트워크(900) 각각에 존재하는 제1 UPnP 디바이스(820) 및 제2 UPnP 디바이스(920)의 정보 및 서비스 정보를 수집하여 상호 동기화한다. 여기서, 제1 홈 게이트웨이(810)와 제2 홈 게이트웨이(910)는 RAT(Remote Access Transport) 채널을 형성하여 원격 접속 정보를 송수신한다.The first home gateway 810 and the second home gateway 910 are connected to the first UPnP device 820 and the second UPnP device 920 existing in the first UPnP network 800 and the second UPnP network 900, And collects and synchronizes information and service information. The first home gateway 810 and the second home gateway 910 form a remote access transport (RAT) channel to transmit and receive remote access information.

이때, 제1 홈 게이트웨이(810)와 제2 홈 게이트웨이(910)간의 통신은 공인 인터넷 프로토콜 주소(Internet Protocol Address, 이하에서는 'IP 주소'로 통칭함) 를 통해 이루어진다. 그리고 제1 UPnP 네트워크(800) 및 제2 UPnP 네트워크(900)는 IP 기반의 표준 프로토콜 기술을 사용하며, 사설 IP 주소를 사용한다.At this time, communication between the first home gateway 810 and the second home gateway 910 is performed through a public Internet Protocol address (hereinafter, referred to as an 'IP address'). The first UPnP network 800 and the second UPnP network 900 use an IP-based standard protocol technology and use a private IP address.

한편, 제1 홈 게이트웨이(810)에 연결된 컨트롤 포인트(830)는 SOAP(Simple Object Acces Procotol)를 이용하여 제2 홈 게이트웨이(910)에 연결된 제2 UPnP 디바이스(920)와 원격 접속할 수 있다. 여기서, SOAP는 원격지 함수 호출을 목적으로 HTTP(HyperText Transfer Protocol) 상에서 XML(eXtensible MarkUp Language)을 기반으로 작성된 프로토콜이다.Meanwhile, the control point 830 connected to the first home gateway 810 can remotely access the second UPnP device 920 connected to the second home gateway 910 using SOAP (Simple Object Access Protocol). Here, SOAP is a protocol based on XML (eXtensible MarkUp Language) on HTTP (HyperText Transfer Protocol) for remote function call.

이때, 컨트롤 포인트(830)는 제2 UPnP 디바이스(920)가 제공하는 서비스의 상태 변화를 알리는 이벤트 정보를 수신하기 위해 이러한 이벤트 정보에 대한 가입을 요청한다. 여기서, 가입 요청은 이벤트 수신 등록 메시지(SUBSCRIBE)를 이용한다.At this time, the control point 830 requests subscription for the event information to receive event information informing the state change of the service provided by the second UPnP device 920. Here, the subscription request uses an event reception registration message (SUBSCRIBE).

이러한 이벤트 수신 등록 메시지(SUBSCRIBE)는 UPnP 포럼(Forum)의 디바이스 아키텍쳐 v1.1 문서에 정의되어 있는 내용에 따르면, 콜백 필드(Call-back field)를 포함한다. Such an event reception registration message (SUBSCRIBE) includes a call-back field according to the contents defined in the device architecture v1.1 document of the UPnP forum.

여기서, 콜백 필드는 이벤트 메시지를 전송하는 위치 즉 이벤트 수신 등록 메시지(SUBSCRIBE)를 수신한 제2 UPnP 디바이스(920)가 이벤트를 통지할 위치가 수록되도록 정의된 필드이다. 이러한 콜백 필드에는 URL(Uniform Resource Locator) 정보가 명시되어야하며 컨트롤 포인트(830)의 콜백 접속 주소가 수록된다. 이러한 콜백 접속 주소는 컨트롤 포인트(830)의 IP 주소 및 포트 번호로 구성된 URL이다.Here, the callback field is a field defined to include a location to which the second UPnP device 920 receiving the event message, i.e., the event reception registration message (SUBSCRIBE), notifies the event. In this callback field, URL (Uniform Resource Locator) information should be specified and the callback access address of the control point 830 is recorded. The callback access address is a URL composed of the IP address and the port number of the control point 830.

또한, 컨트롤 포인트(830)는 GENA(General Event Notification Architecture)를 이용하여 제2 UPnP 디바이스(920)로부터 이벤트 정보를 수신한다.Also, the control point 830 receives event information from the second UPnP device 920 using General Event Notification Architecture (GENA).

세부적으로, 컨트롤 포인트(830)는 할당부(831), 메모리(832), 판단부(833), 설정부(834), 변환부(835) 및 전송부(836) 를 포함한다.In detail, the control point 830 includes an assigning unit 831, a memory 832, a determining unit 833, a setting unit 834, a converting unit 835, and a transmitting unit 836.

할당부(831)는 제1 홈 게이트웨이(810)로부터 IP 주소를 할당받는다. 이때, DHCP(Dynamic Host Configuration Protocal) 방식으로 IP 어드레스를 자동 할당받을 수 있다.The assigning unit 831 is assigned an IP address from the first home gateway 810. At this time, the IP address can be automatically allocated by the DHCP (Dynamic Host Configuration Protocol) method.

메모리(832)는 기 정의된 사설 IP 대역 정보를 저장한다. 예컨대 IETF(Internet Engineering Task Force) RFC(Request For Comments) 표준에 의해 정해진 사설 IP 대역 정보를 저장할 수 있다.The memory 832 stores predefined private IP band information. For example, private IP band information defined by an Internet Engineering Task Force (IETF) Request For Comments (RFC) standard.

판단부(833)는 할당부(831)가 할당받은 IP 주소가 메모리(832)에 저장된 사설 IP 대역에 포함되는 사설 IP 주소인지를 판단한다.The determination unit 833 determines whether the IP address allocated by the allocation unit 831 is a private IP address included in the private IP band stored in the memory 832. [

설정부(834)는 제1 홈 게이트웨이(810)에게 포트 포워딩(Port Forwarding) 설정을 요청하여 제1 홈 게이트웨이(810)의 공인 IP 주소 및 포트 포워딩 설정된 외부 포트 번호를 수신한다.The setting unit 834 requests the first home gateway 810 to set the port forwarding and receives the public IP address of the first home gateway 810 and the external port number set for port forwarding.

변환부(835)는 설정부(834)가 수신한 제1 홈 게이트웨이(810)의 공인 IP 주소 및 포트 포워딩 설정된 외부 포트 번호를 이용하여 콜백 접속 주소를 생성한다.The converting unit 835 generates a callback access address using the public IP address of the first home gateway 810 and the port number of the external port number set by the port setting unit 834.

전송부(836)는 이벤트 수신 등록 메시지(SUBSCRIBE)를 생성하여 제2 UPnP 디바이스(920)에게 전송한다.The transmitting unit 836 generates an event reception registration message (SUBSCRIBE) and transmits it to the second UPnP device 920.

이상 설명한 내용을 토대로, 컨트롤 포인트(830)가 제2 UPnP 디바이스(920)가 제공하는 이벤트를 수신하는 일련의 과정에 대해 설명하면 도 4와 같다. 이때, 도 3과 동일한 구성 요소에 대한 설명은 동일한 도면 부호를 사용한다.Based on the above description, a series of processes in which the control point 830 receives an event provided by the second UPnP device 920 will be described with reference to FIG. In this case, the same reference numerals are used for the same elements as those in Fig.

도 4는 도 3의 구성에 따른 컨트롤 포인트가 원격지에 위치하는 디바이스로부터 이벤트를 수신하는 과정을 나타낸 흐름도이다.4 is a flowchart illustrating a process of receiving an event from a device located at a remote location by a control point according to the configuration of FIG.

도 4를 참조하면, 컨트롤 포인트(830)의 할당부(831)는 제1 홈 게이트웨이(810)로부터 할당받은 IP 주소를 확인한다(S101).Referring to FIG. 4, the assigning unit 831 of the control point 830 confirms the IP address allocated from the first home gateway 810 (S101).

컨트롤 포인트(830)의 판단부(833)는 할당부(831)가 할당받은 IP 주소가 메모리(832)에 저장된 사설 IP 대역에 포함되는 사설 IP 주소인지를 판단한다(S103).The determination unit 833 of the control point 830 determines whether the IP address assigned by the assigning unit 831 is a private IP address included in the private IP band stored in the memory 832 at step S103.

이때, 사설 IP 주소가 아닌 경우로 판단되면, 할당부(831)가 할당받은 IP 주소 및 포트 번호를 이벤트 수신 등록 메시지(SUBSCRIBE)의 콜백 필드에 포함(S105)시켜 제2 UPnP 디바이스(920)에게 전송한다(S107).If it is determined that the IP address is not the private IP address, the IP address and the port number allocated by the assigning unit 831 are included in the callback field of the event reception registration message (SUBSCRIBE) (S105), and the second UPnP device 920 (S107).

반면, S103 단계에서 사설 IP 주소를 할당받은 경우로 판단되면, 컨트롤 포인트(830)의 설정부(834)는 제1 홈 게이트웨이(810)에게 포트 포워딩 설정을 요청한다(S109).On the other hand, if it is determined in step S103 that the private IP address is allocated, the setting unit 834 of the control point 830 requests the first home gateway 810 to set the port forwarding (S109).

그러면, 제1 홈 게이트웨이(810)는 포트 포워딩을 요청한 컨트롤 포인트(830)에 외부 포트 번호를 할당하고, 컨트롤 포인트(830)의 사설 IP 주소 및 포트 번호로의 포워딩을 설정한다(S111). 그리고 제1 홈 게이트웨이(810)의 공인 IP 주소 및 포트 포워딩 설정된 외부 포트 번호를 설정부(834)에게 전송한다(S113).In step S111, the first home gateway 810 allocates an external port number to the control point 830 requesting port forwarding, and sets forwarding to the private IP address and port number of the control point 830 in step S111. The public IP address of the first home gateway 810 and the external port number set for port forwarding are transmitted to the setting unit 834 (S113).

컨트롤 포인트(830)의 변환부(835)는 설정부(834)가 수신한 제1 홈 게이트웨이(810)의 공인 IP 주소 및 포트 포워딩 설정된 외부 포트 번호를 이용하여 콜백 접속 주소를 생성한다(S115). 그리고 컨트롤 포인트(830)의 전송부(836)는 변환부(835)가 생성한 콜백 접속 주소를 이벤트 수신 등록 메시지(SUBSCRIBE)의 콜백 필드에 포함시켜 제2 UPnP 디바이스(920)에게 전송한다(S117).The converting unit 835 of the control point 830 generates a callback access address using the public IP address of the first home gateway 810 and the port number of the external port that is set by the port forwarding unit 810 received by the setting unit 834 in operation S115. . Then, the transmitting unit 836 of the control point 830 transmits the callback access address generated by the converting unit 835 to the second UPnP device 920 in the callback field of the event reception registration message (SUBSCRIBE) (S117 ).

이후, 제2 UPnP 디바이스(920)는 S117 단계에서 수신한 이벤트 수신 등록 메시지(SUBSCRIBE)의 콜백 필드에 수록된 콜백 접속 주소를 이용하여 이벤트를 통지한다.
Then, the second UPnP device 920 notifies the event using the callback access address included in the callback field of the event reception registration message (SUBSCRIBE) received in step S117.

<제2 실시예>&Lt; Embodiment 2 >

다음, 도 5는 본 발명의 다른 실시예에 따른 UPnP 원격 접속 네트워크 구성도이다.5 is a block diagram of a UPnP remote access network according to another embodiment of the present invention.

도 5를 참조하면, 도 3의 구성과 대부분 동일하고, 제1 UPnP 네트워크(800')의 제1 홈 게이트웨이(810') 및 컨트롤 포인트(830')가 다른 실시예의 구성을 가진다. 따라서, 도 3과 동일한 구성 요소에 대한 설명은 생략하고, 다른 실시예의 구성에 대해서 설명한다.5, the first home gateway 810 'and the control point 830' of the first UPnP network 800 'have substantially the same configuration as that of FIG. Therefore, description of the same components as those of FIG. 3 will be omitted, and the configuration of another embodiment will be described.

컨트롤 포인트(830')는 도 3의 실시예와 달리 컨트롤 포인트(830')의 사설 IP 주소 및 포트 번호를 토대로 생성된 콜백 접속 주소를 콜백 필드에 포함하는 이벤트 수신 등록 메시지(SUBSCRIBE)를 생성하여 제2 UPnP 디바이스(920)에게 전송한다.Unlike the embodiment of FIG. 3, the control point 830 'generates an event reception registration message (SUBSCRIBE) including a callback connection address generated based on the private IP address and the port number of the control point 830' in the callback field To the second UPnP device 920.

또한, 제1 홈 게이트웨이(810')는 제2 UPnP 디바이스(920)의 위치를 광고하는 SOAP 메시지를 제2 홈 게이트웨이(910)로부터 수신한다.In addition, the first home gateway 810 'receives a SOAP message advertising the location of the second UPnP device 920 from the second home gateway 910.

여기서, 제2 UPnP 디바이스(920)의 위치를 광고하는 SOAP 메시지는 UPnP 포럼(Forum) 버전 1.0의 RA (Remote Access) 표준 문건에 정의된 'AddRemoteDevice() 메시지'가 사용된다. Here, the 'AddRemoteDevice () message' defined in the RA (Remote Access) standard document of the UPnP forum version 1.0 is used as the SOAP message advertising the location of the second UPnP device 920.

'AddRemoteDevice() 메시지'는 원격 단말 추가 리스트 즉 'DeviceList'가 입력 파라미터로 첨부되며, 'DeviceList' 파라미터의 'descriptionDocument' 항목은 URL 정보가 수록되도록 정의되어 있다. The 'AddRemoteDevice () message' is defined such that a remote terminal addition list, that is, 'DeviceList' is attached as an input parameter and a 'descriptionDocument' item of the 'DeviceList' parameter contains URL information.

이러한 'descriptionDocument' 항목에는 추가되는 원격 단말 즉 제2 UPnP 디바이스(920)의 접속 주소가 수록된다.In this 'descriptionDocument' item, the connection address of the added remote terminal, that is, the second UPnP device 920 is recorded.

제1 홈 게이트웨이(810')는 'AddRemoteDevice() 메시지'가 수신되면, 제2 UPnP 디바이스(920)의 접속 주소를 포함하는 SSDP(Simple Service Discovery Protocol) 메시지를 생성하여 컨트롤 포인트(830')에게 전송한다. 이러한 SSDP 메시지는 컨트롤 포인트(830')가 원격 네트워크 상의 제2 UPnP 디바이스(920)를 발견할 수 있도록 처리하는 역할을 한다.Upon receiving the 'AddRemoteDevice () message', the first home gateway 810 'generates a Simple Service Discovery Protocol (SSDP) message including the connection address of the second UPnP device 920 and transmits the SSDP message to the control point 830' send. This SSDP message serves to process the control point 830 'so that it can discover the second UPnP device 920 on the remote network.

또한, 컨트롤 포인트(830')는 이벤트 수신 등록 메시지(SUBSCRIBE)를 제1 홈 게이트웨이(810')을 통하여 제2 UPnP 디바이스(920)에게 전송한다.In addition, the control point 830 'transmits an event reception registration message (SUBSCRIBE) to the second UPnP device 920 through the first home gateway 810'.

이때, 제1 홈 게이트웨이(810')는 수신부(811), 추출부(812), 패킷 필터(813), 설정부(814), 변환부(815) 및 전송부(816)를 포함한다.The first home gateway 810 'includes a receiving unit 811, an extracting unit 812, a packet filter 813, a setting unit 814, a converting unit 815, and a transmitting unit 816.

수신부(811)는 제1 UPnP 디바이스(820), 컨트롤 포인트(830') 및 제2 홈 게이트웨이(910)로부터 SSDP 메시지 또는 SOAP 메시지를 수신한다.The receiving unit 811 receives the SSDP message or the SOAP message from the first UPnP device 820, the control point 830 'and the second home gateway 910.

추출부(812)는 수신부(811)가 수신하는 메시지 중에서 제2 UPnP 디바이스(920)의 위치를 광고하는 'AddRemoteDevice() 메시지'를 추출한다.The extractor 812 extracts an 'AddRemoteDevice () message' that advertises the location of the second UPnP device 920 among the messages received by the receiver 811.

패킷 필터(813)는 추출부(812)로부터 'AddRemoteDevice() 메시지'가 전달되는 경우, 'AddRemoteDevice() 메시지'의 'descriptionDocument' 항목에 수록된 제2 UPnP 디바이스(920)의 접속 주소를 추출하여 추출된 접속 주소를 목적지 주소로 설정하여 전송되는 패킷을 가로채기 위한 패킷 필터링을 설정한다.The packet filter 813 extracts the connection address of the second UPnP device 920 included in the 'descriptionDocument' item of the 'AddRemoteDevice () message' when the 'AddRemoteDevice () And set packet filtering to intercept the transmitted packet by setting the connected address as the destination address.

이 후 패킷 필터(813)는 필터링된 패킷들 중에서 이벤트 수신 등록 메시지(SUBSCRIBE)를 골라낸다.The packet filter 813 then selects an event reception registration message (SUBSCRIBE) from among the filtered packets.

설정부(814)는 패킷 필터(813)가 필터링한 이벤트 수신 등록 메시지(SUBSCRIBE)의 콜백 필드로부터 콜백 접속 주소를 추출하여 포트 포워딩을 설정한다. 즉 콜백 접속 주소에 대해 외부 포트 번호를 할당하여 콜백 접속 주소로의 포워딩을 설정한다.The setting unit 814 extracts the callback access address from the callback field of the event reception registration message (SUBSCRIBE) filtered by the packet filter 813 to set up the port forwarding. That is, an external port number is assigned to the callback connection address, and forwarding to the callback connection address is set.

변환부(815)는 패킷 필터(813)가 필터링한 이벤트 수신 등록 메시지(SUBSCRIBE)의 콜백 필드로부터 추출한 콜백 접속 주소를 제1 홈 게이트웨이(810')의 공인 IP 주소 및 설정부(814)가 포트 포워딩 설정한 외부 포트 번호로 변경한다.The conversion unit 815 converts the callback access address extracted from the callback field of the event reception registration message SUBSCRIBE filtered by the packet filter 813 into the public IP address of the first home gateway 810 ' Forwarding Change to the external port number set.

전송부(816)는 변환부(815)에 의해 콜백 접속 주소가 변경된 이벤트 수신 등록 메시지(SUBSCRIBE)를 제2 UPnP 디바이스(920)에게 전송한다.The transmitting unit 816 transmits an event reception registration message (SUBSCRIBE) whose callback access address is changed by the converting unit 815 to the second UPnP device 920.

이상 설명한 내용을 토대로, 컨트롤 포인트(830')가 제2 UPnP 디바이스(920)가 제공하는 이벤트를 수신하는 일련의 과정에 대해 설명하면 도 6과 같다. 이때, 도 5와 동일한 구성 요소에 대한 설명은 동일한 도면 부호를 사용한다.Based on the above description, a series of processes in which the control point 830 'receives an event provided by the second UPnP device 920 will be described with reference to FIG. 5 are denoted by the same reference numerals.

도 6은 도 5의 구성에 따른 컨트롤 포인트가 원격지에 위치하는 디바이스로부터 이벤트를 수신하는 과정을 나타낸 흐름도이다.6 is a flowchart illustrating a process of receiving an event from a device located at a remote location by a control point according to the configuration of FIG.

도 6을 참조하면, 제2 UPnP 디바이스(920)는 제2 UPnP 네트워크(900)에 추가되면, SSDP의 출현(Alive) 메시지를 제2 홈 게이트웨이(910)에게 전송한다(S201). 그러면, 제2 홈 게이트웨이(910)는 제2 UPnP 디바이스(920)의 접속 주소를 포함하는 'AddRemoteDevice() 메시지'를 제1 홈 게이트웨이(810')에게 전송한다(S203). Referring to FIG. 6, when the second UPnP device 920 is added to the second UPnP network 900, the second UPnP device 920 transmits an SSDP Alive message to the second home gateway 910 (S201). Then, the second home gateway 910 transmits' AddRemoteDevice () message 'including the connection address of the second UPnP device 920 to the first home gateway 810' (S203).

제1 홈 게이트웨이(810')의 추출부(812)가 제1 홈 게이트웨이(810')의 수신부(811)가 수신한 메시지 중에서 'AddRemoteDevice() 메시지'를 추출하면, 제1 홈 게이트웨이(810')의 패킷 필터(813)는 'AddRemoteDevice() 메시지'의 'descriptionDocument' 항목으로부터 접속 주소를 추출(S205)하여 추출된 접속 주소를 목적지로 설정하여 전송되는 패킷을 가로채기 위한 패킷 필터링을 설정한다(S207).When the extracting unit 812 of the first home gateway 810 'extracts the' AddRemoteDevice () message 'from the messages received by the receiving unit 811 of the first home gateway 810', the first home gateway 810 ' The packet filter 813 of the addRemoteDevice () message extracts the connection address from the 'descriptionDocument' item of the 'AddRemoteDevice () message (S205) and sets the extracted connection address as the destination to set packet filtering for intercepting the transmitted packet S207).

이후, 패킷 필터(813)는 필터링 된 패킷들 중에서 이벤트 수신 등록 메시지(SUBSCRIBE)를 골라낸다(S209). Thereafter, the packet filter 813 selects an event reception registration message (SUBSCRIBE) from among the filtered packets (S209).

이어서 설정부(814)는 패킷 필터(813)를 통해 획득한 이벤트 수신 등록 메시지(SUBSCRIBE)의 콜백 접속 필드로부터 콜백 접속 주소를 추출(S213)한다. 그리고 콜백 접속 주소에 대해 포트 포워딩을 설정한다(S215). 즉 임의의 외부 포트 번호를 할당하고, 할당된 외부 포트 번호를 컨트롤 포인트(830')의 내부 IP 주소 및 포트 번호로 포트 포워딩을 설정한다. Subsequently, the setting unit 814 extracts a callback connection address from the callback connection field of the event reception registration message (SUBSCRIBE) acquired through the packet filter 813 (S213). Then, port forwarding is set for the callback access address (S215). That is, an arbitrary external port number, and sets the assigned external port number to the internal IP address and port number of the control point 830 '.

이때, 내부 IP 주소 및 포트 번호는 컨트롤 포인트(830')의 사설 IP 주소 및 포트 번호를 말한다.At this time, the internal IP address and the port number refer to the private IP address and port number of the control point 830 '.

그러면, 제1 홈 게이트웨이(810')의 변환부(815)는 S213 단계에서 추출한 콜백 접속 주소를 제1 홈 게이트웨이(810')의 공인 IP 주소 및 S215 단계에서 포트 포워딩 설정된 외부 포트 번호로 변경한다(S217). Then, the converting unit 815 of the first home gateway 810 'changes the callback access address extracted in step S213 to the public IP address of the first home gateway 810' and the external port number set for port forwarding in step S215 (S217).

제1 홈 게이트웨이(810')의 전송부(816)는 S217 단계에서 변경된 콜백 접속 주소를 S209 단계에서 수신한 이벤트 수신 등록 메시지(SUBSCRIBE)의 콜백 필드에 포함시켜 제2 UPnP 디바이스(920)에게 전송한다(S219).The transmitting unit 816 of the first home gateway 810 'includes the callback access address changed in step S217 in the callback field of the event reception registration message (SUBSCRIBE) received in step S209 and transmits it to the second UPnP device 920 (S219).

이후, 제2 UPnP 디바이스(920)는 S219 단계에서 수신한 이벤트 수신 등록 메시지(SUBSCRIBE)의 콜백 필드에 수록된 콜백 접속 주소를 이용하여 이벤트를 통지한다.Then, the second UPnP device 920 notifies the event using the callback access address included in the callback field of the event reception registration message (SUBSCRIBE) received in step S219.

이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, It belongs to the scope of right.

100: Remote Access Client 110: RADA
111: RADA Listener/Relay 112: RADASync
113: RADASync CP 120: RAC
121: RATAConfig 130: CP
140: Device 150: RA Transport Agent
200: Remote Access Server 210: RADA
211: RADASync 212: RADASync CP
220: RAS 221: Inbound Connection Config
222: RADA Listener/Relay 223: RADAConfig
224: RATAConfig 230: RA Transport Agent
300: Home Device 400: RA Management Console
500: 제1 UPnP 네트워크 501: 홈 게이트웨이(RAS)
503: 제1 UPnP 디바이스 505: 컨트롤 포인트
600: 제2 UPnP 네트워크 601: 홈 게이트웨이(RAC)
603: 제2 UPnP 디바이스 700: 인터넷망
800: 제1 UPnP 네트워크 810, 810': 제1 홈 게이트웨이
811: 수신부 812: 추출부
813: 패킷 필터 814: 설정부
815: 변환부 816: 전송부
820: 제1 UPnP 디바이스 830, 830': 컨트롤 포인트
831: 할당부 832: 메모리
833: 판단부 834: 설정부
835: 변환부 836: 전송부
900: 제2 UPnP 네트워크 910: 제2 홈 게이트웨이(RAC)
920: 제2 UPnP 디바이스 1000: 인터넷망
100: Remote Access Client 110: RADA
111: RADA Listener / Relay 112: RADASync
113: RADASync CP 120: RAC
121: RATAConfig 130: CP
140: Device 150: RA Transport Agent
200: Remote Access Server 210: RADA
211: RADASync 212: RADASync CP
220: RAS 221: Inbound Connection Config
222: RADA Listener / Relay 223: RADAConfig
224: RATAConfig 230: RA Transport Agent
300: Home Device 400: RA Management Console
500: first UPnP network 501: home gateway (RAS)
503: first UPnP device 505: control point
600: second UPnP network 601: home gateway (RAC)
603: Second UPnP device 700: Internet network
800: first UPnP network 810, 810 ': first home gateway
811: Receiving unit 812:
813: Packet filter 814: Setting unit
815: conversion unit 816:
820: first UPnP device 830, 830 ': control point
831: Assignment unit 832: Memory
833: Judgment section 834: Setting section
835: Conversion section 836: Transmission section
900: second UPnP network 910: second home gateway (RAC)
920: second UPnP device 1000: Internet network

Claims (7)

원격지에 위치한 디바이스로부터 서비스의 상태 변화를 알리는 이벤트를 수신하는 컨트롤 포인트에 있어서,
상기 컨트롤 포인트가 상기 컨트롤 포인트와 연결된 홈 게이트웨이로부터 사설 주소 정보를 할당받은 경우, 상기 홈 게이트웨이에게 요청하여 획득한 공인 주소 정보를 이용하여 상기 이벤트를 수신하기 위한 콜백 접속 주소를 변경하는 변환부; 및
상기 변경된 콜백 접속 주소가 포함된 이벤트 수신 등록 메시지를 상기 홈 게이트웨이를 통하여 상기 디바이스에게 전송하는 전송부를 포함하고,
상기 디바이스는 상기 이벤트 수신 등록 메시지에 포함된 상기 변경된 콜백 접속 주소로 접속을 시도하여 상기 이벤트를 통지하는 컨트롤 포인트.
There is provided a control point for receiving an event notifying a state change of a service from a device located at a remote location,
A conversion unit for changing a callback access address for receiving the event using the public address information requested by the home gateway when the control point is allocated with private address information from a home gateway connected to the control point; And
And a transmitting unit for transmitting an event reception registration message including the changed callback access address to the device through the home gateway,
Wherein the device attempts to connect to the changed callback access address included in the event reception registration message to notify the event.
제1항에 있어서,
상기 홈 게이트웨이에게 포트 포워딩 설정을 요청하여 상기 홈 게이트웨이의 공인 IP 주소 및 포트 포워딩 설정된 외부 포트 번호를 수신하는 설정부를 더 포함하고,
상기 변환부는,
상기 설정부가 수신한 상기 공인 IP 주소 및 상기 외부 포트 번호를 이용하여 상기 콜백 접속 주소를 변경하는 컨트롤 포인트.
The method according to claim 1,
Further comprising a setting unit for requesting the home gateway to set a port forwarding and receiving a public IP address of the home gateway and an external port number set for port forwarding,
Wherein,
And a control point for changing the callback access address using the public IP address and the external port number received by the setting unit.
제1항 또는 제2항에 있어서,
상기 변환부는,
범용 플러그 앤 플레이(Universal Plug and Play) 서비스에 정의된 상기 이벤트 수신 등록 메시지의 콜백(CALLBACK) 필드에 명시되는 URL(uniform resource locator) 정보를 상기 공인 IP 주소 및 상기 포트 번호를 이용하여 변경하는 것을 특징으로 하는 컨트롤 포인트.
3. The method according to claim 1 or 2,
Wherein,
(Uniform resource locator) information specified in a CALLBACK field of the event reception registration message defined in the universal plug and play service using the public IP address and the port number Control points feature.
제1 홈 네트워크에 속하는 컨트롤 포인트와, 제2 홈 네트워크에 속하는 원격 디바이스 간에 원격 접속을 지원하는 상기 제1 홈 네트워크에 속하는 홈 게이트웨이에 있어서,
상기 컨트롤 포인트로부터 이벤트 수신 등록 메시지-여기서 이벤트 수신 등록 메시지는 상기 원격 디바이스가 제공하는 서비스의 상태 변화를 알리는 이벤트를 수신하기 위한 콜백 접속 주소를 포함함-에 포함된 상기 콜백 접속 주소에 대해 포트 포워딩을 설정하는 설정부;
상기 콜백 접속 주소를 상기 홈 게이트웨이의 공인 IP 주소 및 상기 설정부에 의해 포트 포워딩 설정된 외부 포트 번호로 변경하는 변환부; 및
상기 변환부에 의해 변경된 콜백 접속 주소를 상기 이벤트 수신 등록 메시지에 포함시켜 상기 원격 디바이스에게 전송하는 전송부를 포함하고,
상기 원격 디바이스는 서비스 상태 변화가 발생하는 경우, 상기 이벤트 수신 등록 메시지에 포함된 상기 변경된 콜백 접속 주소로 접속을 시도하여 상기 이벤트를 통지하는 홈 게이트웨이.
A home gateway belonging to the first home network supporting remote access between a control point belonging to a first home network and a remote device belonging to a second home network,
Wherein the event reception registration message includes a callback access address for receiving an event notifying a change in status of a service provided by the remote device, A setting unit for setting the setting value;
A conversion unit for changing the callback access address to a public IP address of the home gateway and an external port number set by the setting unit for port forwarding; And
And a transmitting unit for transmitting the event reception registration message including the changed callback connection address to the remote device,
Wherein the remote device attempts to connect to the changed callback access address included in the event reception registration message and notifies the event when the service state change occurs.
제4항에 있어서,
상기 원격 디바이스의 접속 주소를 목적지로 설정한 패킷을 가로채기 위한 패킷 필터링을 설정하고 필터링된 패킷들 중에서 상기 이벤트 수신 등록 메시지를 골라내는 패킷 필터를 더 포함하는 홈 게이트웨이.
5. The method of claim 4,
Further comprising: a packet filter configured to set packet filtering for intercepting a packet having a connection address of the remote device set as a destination, and to select the event reception registration message from the filtered packets.
제5항에 있어서,
상기 패킷 필터는,
상기 원격 디바이스로부터 자신의 위치를 광고하는 SOAP(Simple Object Access Protocol) 메시지가 수신되는 경우, 상기 SOAP 메시지의 descriptionDocument 항목에 수록된 URL(uniform resource locator) 정보를 추출하여 패킷 필터링을 설정하는 홈 게이트웨이.
6. The method of claim 5,
The packet filter includes:
A home gateway for extracting URL (uniform resource locator) information included in a descriptionDocument item of the SOAP message to set packet filtering when a Simple Object Access Protocol (SOAP) message for advertising its location is received from the remote device.
제4항에 있어서,
상기 변환부는,
범용 플러그 앤 플레이(Universal Plug and Play) 서비스에 정의된 상기 이벤트 수신 등록 메시지의 콜백(CALLBACK) 필드에 명시되는 URL 정보를 상기 홈 게이트웨이의 공인 IP 주소 정보 및 상기 포트 포워딩 설정된 외부 포트 번호를 이용하여 변경하는 것을 특징으로 하는 홈 게이트웨이.
5. The method of claim 4,
Wherein,
The URL information specified in the CALLBACK field of the event reception registration message defined in the universal plug and play service is transmitted to the home gateway using public IP address information of the home gateway and the external port number set by the port forwarding To the home gateway.
KR1020100087646A 2010-09-07 2010-09-07 Control point and home gateway for receiving event provided from device in remote place KR101394609B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100087646A KR101394609B1 (en) 2010-09-07 2010-09-07 Control point and home gateway for receiving event provided from device in remote place

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100087646A KR101394609B1 (en) 2010-09-07 2010-09-07 Control point and home gateway for receiving event provided from device in remote place

Publications (2)

Publication Number Publication Date
KR20120025661A KR20120025661A (en) 2012-03-16
KR101394609B1 true KR101394609B1 (en) 2014-05-13

Family

ID=46131843

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100087646A KR101394609B1 (en) 2010-09-07 2010-09-07 Control point and home gateway for receiving event provided from device in remote place

Country Status (1)

Country Link
KR (1) KR101394609B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102012107547B4 (en) 2011-08-22 2020-12-31 Samsung Electronics Co., Ltd. Housing for a light emitting device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030089126A (en) * 2002-05-16 2003-11-21 한국전자통신연구원 A Method and Apparatus of Management and Control of UPnP Device in Home Network from the Internet
JP2005080003A (en) * 2003-09-01 2005-03-24 Sony Corp Access control method, communication system, server and communication terminal
KR20060069867A (en) * 2003-09-19 2006-06-22 모토로라 인코포레이티드 Setting up a name resolution system for home-to-home communications
KR20060098179A (en) * 2005-03-10 2006-09-18 에스케이 텔레콤주식회사 A system and method for monitoring and controlling using communication network

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030089126A (en) * 2002-05-16 2003-11-21 한국전자통신연구원 A Method and Apparatus of Management and Control of UPnP Device in Home Network from the Internet
JP2005080003A (en) * 2003-09-01 2005-03-24 Sony Corp Access control method, communication system, server and communication terminal
KR20060069867A (en) * 2003-09-19 2006-06-22 모토로라 인코포레이티드 Setting up a name resolution system for home-to-home communications
KR20060098179A (en) * 2005-03-10 2006-09-18 에스케이 텔레콤주식회사 A system and method for monitoring and controlling using communication network

Also Published As

Publication number Publication date
KR20120025661A (en) 2012-03-16

Similar Documents

Publication Publication Date Title
KR101577460B1 (en) Method and apparatus for preventing ip address conflict in remote access service
EP2273722B1 (en) Upnp device for preventing network address conflict in consideration of remote access and method thereof
US7921194B2 (en) Method and system for remote access to universal plug and play devices
JP4041118B2 (en) Gateway device, network system, communication program, and communication method
EP2127310A1 (en) A method and apparatus for service discovery
WO2015003566A1 (en) Method, device and system for transmitting packet in multicast domain name system
US8443418B2 (en) Method and apparatus for managing remote access authority in UpnP remote access service
US9531561B2 (en) Apparatus and method for extending network area
US10404485B2 (en) Method and apparatus for restricting disclosure of network information during remote access service
US20090254671A1 (en) Remote control of a device by a terminal
JP2005510181A (en) Method for connecting HAVi cluster and IP cluster using bridge device and related bridge device
KR101394609B1 (en) Control point and home gateway for receiving event provided from device in remote place
US7617316B2 (en) Network connection device, network system and method for avoiding duplication of proxy function
KR101238907B1 (en) Home gateway and control point for supporting a share of multimedia contents in media server in private network with media media renderer in remote private network
KR100736037B1 (en) SYSTEM AND METHOD FOR EXPANDING UPnP FUNTION
KR101614548B1 (en) Method and apparatus for preventing ip address conflict in remote access service
KR101667049B1 (en) Method and apparatus for restricting the disclosure of network information in remote access service
Nakamura et al. Implementation and evaluation of caching method to increase the speed of UPnP gateway
Nakamura et al. Caching method to increase the speed of UPnP gateway
KR20040066337A (en) Control point function destribution system on universal plug and play network

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20170427

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180503

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190502

Year of fee payment: 6