KR20110039142A - 범용 플러그 앤 플레이 네트워크에서의 원격 접속 방법 - Google Patents

범용 플러그 앤 플레이 네트워크에서의 원격 접속 방법 Download PDF

Info

Publication number
KR20110039142A
KR20110039142A KR1020090096459A KR20090096459A KR20110039142A KR 20110039142 A KR20110039142 A KR 20110039142A KR 1020090096459 A KR1020090096459 A KR 1020090096459A KR 20090096459 A KR20090096459 A KR 20090096459A KR 20110039142 A KR20110039142 A KR 20110039142A
Authority
KR
South Korea
Prior art keywords
server
upnp
terminal
message
remote access
Prior art date
Application number
KR1020090096459A
Other languages
English (en)
Other versions
KR101651640B1 (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 KR1020090096459A priority Critical patent/KR101651640B1/ko
Publication of KR20110039142A publication Critical patent/KR20110039142A/ko
Application granted granted Critical
Publication of KR101651640B1 publication Critical patent/KR101651640B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/12Arrangements for remote connection or disconnection of substations or of equipment thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

UPnP 네트워크간의 원격 접속 방법은 서버가 제1 UPnP 단말로부터 제1 UPnP 단말이 가용 상태임을 알리는 제1 메시지를 수신하고, 제1 메시지에 따라 클라이언트로 또는 제2 UPnP 단말로부터 제1 UPnP 단말에 대한 정보 공유 요청을 대신 수신하기 위한 포트를 할당하기 위한 소켓을 생성하며, 서버의 IP 주소 및 소켓의 포트 번호를 포함하는 원격단말추가 호출을 클라이언트로 전달하는 단계를 포함한다.
Figure P1020090096459
UPnP, 원격 접속, IP, 게이트웨이

Description

범용 플러그 앤 플레이 네트워크에서의 원격 접속 방법{METHOD FOR REMOTE ACCESS IN UNIVERSAL PLUG AND PLAY NETWORK}
본 발명은 범용 플러그 앤 플레이 네트워크(Universal Plug and Play Network, 이하에서는 'UPnP 네트워크'라고도 함)에서의 원격 접속 방법에 관한 것이다. 특히 본 발명은 UPnP 네트워크에서 원격의 디바이스에게 서비스를 제공하기 위한 원격 접속 방법에 관한 것이다.
범용 플러그 앤 플레이(Universal Plug and Play, 이하에서는 'UPnP'라고도 함) 프로토콜은 일반적으로 홈 네트워크 내에 위치한 장치들간의 통신에 사용되는 인터넷 프로토콜(Internet Protocol, 이하에서는 'IP'라고도 함) 기반의 표준 프로토콜 기술이다.
특히, 장치들간의 미디어 컨텐츠 공유를 위해 제정된 UPnP 오디오/비디오(Audio/Video, 이하에서는 'AV'라고도 함) 구조에 따르면 홈 네트워크 내에 위치한 장치들은 미디어 컨텐츠(media contents)를 저장하고 공급해주는 미디어 서버(Media Server), 미디어 컨텐츠를 플레이(play)하는 미디어 렌더러(Media Renderer), 미디어 서버와 미디어 렌더러간의 미디어 스트림을 제어하고 사용자 인 터페이스(User Interface, 이하에서는 'UI'라고도 함)를 제공하는 컨트롤 포인트(Control Point)로 구분할 수 있다. 이를 통해 사용자는 홈 네트워크 상에서 미디어 서버에 저장된 컨텐츠를 컨트롤 포인트와의 인터페이스를 통해 미디어 렌더러로 플레이 시킬 수 있다.
예를 들어 사용자는 휴대단말을 컨트롤 포인트로 활용하여 미디어 서버인 개인용 컴퓨터(Personal Computer, 이하에서는 'PC'라고도 함)에 저장된 동영상을 미디어 렌더러인 셋톱 박스(settop box)로 전송하여 텔레비전(TV)를 통해 감상할 수 있다.
또한 UPnP 원격 접속(Remote Access, 이하에서는 'RA'라고도 함) 구조는 홈 네트워크의 외부에 위치한 원격 디바이스가 홈 네트워크 내부의 디바이스와 동일한 서비스를 제공받을 수 있도록 한다.
UPnP RA 구조에 따르면 홈 네트워크 내부에는 원격 접속 서버(Remote Access Server, 이하에서는 'RAS'라고도 함) 기능이 필요하고 원격 디바이스에는 원격 접속 클라이언트(Remote Access Client, 이하에서는 'RAC'라고도 함) 기능이 필요하다. RAC 기능을 수행하는 원격 디바이스는 홈 네트워크에 위치한 RAS로의 접속을 통해 홈 네트워크 내에 위치한 UPnP 디바이스들의 서비스를 제공받을 수 있다.
또한, UPnP RA 구조에서는 RAC 기능을 수행하는 원격 디바이스가 속한 로컬 네트워크 상의 임의의 UPnP 디바이스가 원격지에 위치한 홈 네트워크 내의 UPnP 디바이스의 서비스를 제공받을 수 있도록 하고 있다.
예를 들어 RAC 기능을 수행하는 원격 디바이스가 제1 홈 네트워크에 위치하 고, RAS가 제2 홈 네트워크에 위치하는 경우, 원격 디바이스가 속한 제1 홈 네트워크 내의 임의의 UPnP 디바이스는 RAS를 통해 제2 홈 네트워크에 위치하는 미디어 서버의 영상 컨텐츠를 검색하고 스트리밍 형태로 재생시킬 수 있다.
그러나 제1 홈 네트워크 및 제2 홈 네트워크가 동일한 사설 인터넷 프로토콜(Internet Protocol, 이하에서는 'IP'라고도 함) 주소 대역을 활용하는 경우, 제1 홈 네트워크의 디바이스들과 제2 홈 네트워크의 디바이스들간의 IP 주소가 충돌하여 정상적인 통신이 이루어지지 못하는 경우가 발생할 수 있다.
본 발명이 이루고자 하는 기술적 과제는 사설망으로 구성된 UPnP 네트워크간의 원격 접속 시 IP주소가 충돌하는 것을 방지하기 위한 원격 접속 방법을 제공하는 것이다.
본 발명의 특징에 따른 UPnP 네트워크에서의 원격 접속 방법은 제1 UPnP 네트워크와 제2 UPnP 네트워크간의 원격 접속 방법으로써, 서버가 제1 UPnP 단말로부터 제1 UPnP 단말이 가용 상태임을 알리는 제1 메시지를 수신하는 단계, 서버가 제1 메시지에 따라 클라이언트 또는 제2 UPnP 단말로부터 제1 UPnP 단말에 대한 정보 공유 요청을 대신 수신하기 위한 포트를 할당하기 위한 소켓을 생성하는 단계, 그리고 서버가 서버의 인터넷 프로토콜 IP 주소 및 소켓의 포트 번호를 포함하는 원격단말추가 호출을 클라이언트로 전달하는 단계를 포함한다.
본 발명의 특징에 따르면, 사설망으로 구성된 UPnP 네트워크간의 원격 접속 시 IP주소가 충돌하는 것을 방지함으로써, UPnP 네트워크의 내부의 UPnP 장치가 제공하는 서비스를 UPnP 네트워크의 외부의 UPnP 장치에게 제공할 수 있다.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
이제 도면을 참고하여 본 발명의 실시예에 따른 범용 플러그 앤 플레이 네트워크(Universal Plug and Play Network, 이하에서는 'UPnP 네트워크'라고도 함)에서의 원격 접속 방법에 대해 설명한다.
먼저 도 1을 참고하여 본 발명의 실시예에 따른 UPnP 네트워크간의 원격 접속을 위한 네트워크 시스템에 대해 설명한다.
도 1은 본 발명의 실시예에 따른 네트워크 시스템의 구성을 도시한 도면이 다.
도 1에 도시된 바와 같이, 네트워크 시스템은 인터넷(10)을 통해 통신하는 제1 UPnP 네트워크(100) 및 제2 UPnP 네트워크(200)을 포함한다. 이때 네트워크 시스템은 제1 UPnP 네트워크(100) 및 제2 UPnP 네트워크(200)의 각각의 공인 인터넷 프로토콜 주소(Internet Protocol Address, 이하에서는 'IP주소'라고도 함)를 관리하는 프록시 서버(20)를 더 포함할 수 있다.
제1 UPnP 네트워크(100)는 범용 플러그 앤 플레이 단말(Universal Plug and Play Device, 이하에서는 'UPnP 단말'이라고도 함)(110) 및 원격 접속 클라이언트(Remote Access Client, 이하에서는 'RAC'라고도 함)(130)를 포함한다.
제2 UPnP 네트워크(200)는 원격 접속 서버(Remote Access Server, 이하에서는 'RAS'라고도 함)(210) 및 미디어 서버(230)를 포함한다.
원격 접속 클라이언트(130) 및 원격 접속 서버(210)는 제1 UPnP 네트워크(100)와 제2 UPnP 네트워크(200)간의 원격 접속을 지원하는 장치이며, 원격 접속 클라이언트(130)와 원격 접속 서버(210)간의 통신은 공인 IP주소를 통해 이루어진다. 이때 원격 접속 클라이언트(130) 및 원격 접속 서버(210)는 홈 게이트웨이(home gateway)에 해당할 수 있다.
UPnP 단말(110)는 원격 접속 클라이언트(130)와 원격 접속 서버(210)를 통해 미디어 서버(230)에 원격 접속하여 원격 접속 서비스를 제공받는다. 이때 UPnP 단말(110)는 사설 IP주소를 가질 수 있으며, 할당된 사설 IP주소를 이용하여 원격 접속 클라이언트(130)와 통신할 수 있다.
미디어 서버(230)는 미디어 컨텐츠 파일을 저장하며, UPnP 단말(110)의 요청에 따라 미디어 컨텐츠 파일을 원격 접속 서버(210) 및 원격 접속 클라이언트(130)를 통해 UPnP 단말(110)로 전송한다. 이때 미디어 서버(230)는 사설 IP주소를 가질 수 있으며, 할당된 사설 IP주소를 이용하여 원격 접속 서버(210)와 통신할 수 있다.
다음은 도 2를 참고하여 본 발명의 실시예에 따른 UPnP 네트워크간의 원격 접속 방법에 대해 설명한다.
도 2는 본 발명의 실시예에 따른 UPnP 네트워크간 원격 접속 방법을 도시한 도면이다.
도 2에 도시된 바와 같이, 먼저, 원격 접속 클라이언트(130)는 제1 UPnP 네트워크(100)의 사용자 아이디 및 패스워드, 그리고 원격 접속 클라이언트(130)의 공인 IP주소를 포함하는 제1 세션생성요청 메시지를 프록시 서버(20)로 전송한다(S101).
원격 접속 서버(210)는 제2 UPnP 네트워크(200)의 사용자 아이디 및 패스워드, 그리고 원격 접속 서버(210)의 공인 IP주소를 포함하는 제2 세션생성요청 메시지를 프록시 서버(20)로 전송한다(S103).
다음, 프록시 서버(20)는 제1 세션생성요청 메시지 및 제2 세션생성요청 메시지에 따라 원격 접속 클라이언트(130) 및 원격 접속 서버(210)의 각각의 세션 정보를 생성한다(S105). 이때 제1 세션생성요청 메시지에 의해 생성된 세션 정보는 제1 UPnP 네트워크(100)의 사용자 아이디 및 공인 IP주소를 포함하며, 제2 세션생 성요청 메시지에 의해 생성된 세션 정보는 제2 UPnP 네트워크(200)의 사용자 아이디 및 공인 IP주소를 포함한다.
이후, 미디어 서버(230)는 단순 서비스 발견 프로토콜(Simple Service Discovery Protocol, 이하에서는 'SSDP'라고도 함)에 따라 미디어 서버(230)가 가용 상태임을 알리는 제1 SSDP 메시지를 원격 접속 서버(210)로 전송한다(S107). 이때 제1 SSDP 메시지의 필드값은 "ssdp:alive"에 해당한다.
다음, 원격 접속 서버(210)는 제1 SSDP 메시지에 따라 원격단말추가(AddRemoteDevice) 호출을 프록시 서버(20)로 전송한다(S109).
이후, 프록시 서버(20)는 생성된 세션 정보를 참조하여 원격 접속 서버(210)로부터 수신된 원격단말추가(AddRemoteDevice) 호출을 원격 접속 클라이언트(130)로 전달한다(S111). 이때 프록시 서버(20)는 각 세션의 사용자 아이디를 이용하여 원격단말추가 호출을 전달해야 할지 여부를 판단할 수 있으며, 세션 정보에 등록된 공인 IP주소를 목적지의 IP주소로 활용하여 전달할 수 있다.
예를 들어, 원격 접속 서버(210)로부터 원격단말추가 호출이 수신된 경우, 프록시 서버(20)는 제2 세션생성요청 메시지를 바탕으로 생성된 세션 정보를 조회하여 제2 UPnP 네트워크(200)의 사용자 아이디를 확인한다. 다음, 프록시 서버(20)는 세션 정보들 중에서 동일한 사용자 아이디를 포함하거나 외부 데이터 베이스와 같은 별도의 수단을 통해 공유 관계가 지정된 사용자 아이디를 포함하고 있는 세션 정보들을 검색한다. 이후, 프록시 서버(20)는 검색된 세션들에 포함된 공인 IP주소를 목적지 IP주소로 지정하여 원격단말추가 호출을 전달한다. 도 2에서는 프록시 서버(20)가 원격 접속 서버(210)로부터 전달된 원격단말추가 호출을 원격 접속 클라이언트(130)로 전달하는 예를 보여주고 있다. 이와 같은 과정을 통해 원격 접속 클라이언트(130)는 제2 UPnP 네트워크(200)에 존재하는 미디어 서버(230)의 정보를 알 수 있게 된다. 이때 원격 접속 서버(210)가 원격 접속 클라이언트(130)의 공인 IP주소 및 공유 대상인지 여부를 사용자 설정과 같은 수단을 통해 확인할 수 있다면 프록시 서버(20)를 경유하지 않고 직접 원격 접속 클라이언트(130)로 원격단말추가 호출을 전달할 수도 있다.
다음, 원격 접속 클라이언트(130)는 전달된 원격단말추가(AddRemoteDevice) 호출에 포함된 정보를 바탕으로 제1 SSDP 메시지에 대응하는 제2 SSDP 메시지를 생성한다(S113). 이때 제2 SSDP 메시지는 제1 SSDP 메시지와 동일한 정보를 포함한다.
이후, 원격 접속 클라이언트(130)는 제2 SSDP 메시지를 UPnP 단말(110)로 전달한다(S115). 이를 통해 제1 UPnP 네트워크(100)에 속하는 UPnP 단말(110)이 제2 UPnP 네트워크(200)에 속하는 미디어 서버(230)에 대한 디바이스 정보를 알 수 있다.
다음, UPnP 단말(110)은 하이퍼텍스트 전송 규약(HyperText Transfer Protocol, 이하에서는 'HTTP'라고도 함)에 따라 미디어 서버(230)의 디바이스 상세문서 및 서비스 상세문서를 요청하는 상세문서(description) 요청 메시지를 원격 접속 서버(210)로 전송한다(S117). 이때 상세문서 요청 메시지는 확장성 생성 언어(eXtensible Markup Language, 이하에서는 'XML'이라고도 함)의 문서 형식을 따 를 수 있다.
이후, 원격 접속 서버(210)는 수신된 상세문서 요청 메시지를 미디어 서버(230)로 전달한다(S119).
다음, 미디어 서버(230)는 전달된 상세문서 요청 메시지에 따라 미디어 서버(230)의 디바이스 상세문서 및 서비스 상세문서를 포함하는 상세문서 응답 메시지를 원격 접속 서버(210)로 전송한다(S121). 이때 상세문서 응답 메시지는 출발지 주소에 해당하는 미디어 서버(230)의 사설 IP주소를 포함한다. 또한 상세문서 응답 메시지는 XML의 문서 형식을 따를 수 있다.
이후, 원격 접속 서버(210)는 수신된 상세문서 응답 메시지에 포함된 미디어 서버(230)의 사설 IP주소를 원격 접속 서버(210)의 공인 IP주소로 변경하는 형태로 응용 계층 게이트웨이(Application Level Gateway, 이하에서는 'ALG'라고도 함) 처리를 수행한다(S123).
다음, 원격 접속 서버(210)는 ALG 처리된 상세문서 응답 메시지를 UPnP 단말(110)로 전송한다(S125).
이후, UPnP 단말(110)은 HTTP에 따라 미디어 서버(230)에 저장된 동영상 등의 미디어 컨텐츠 파일을 요청하는 미디어 컨텐츠 파일 요청 메시지를 원격 접속 서버(210)로 전송한다(S127).
다음, 원격 접속 서버(210)는 수신된 미디어 컨텐츠 파일 요청 메시지를 미디어 서버(230)로 전달한다(S129).
이후, 미디어 서버(230)는 전달된 미디어 컨텐츠 파일 요청 메시지에 따라 해당 미디어 컨텐츠 파일을 원격 접속 서버(210)로 전송한다(S131).
다음, 원격 접속 서버(210)는 수신된 미디어 컨텐츠 파일을 UPnP 단말(110)로 전달한다(S133). 이때 원격 접속 서버(210)는 미디어 컨텐츠 파일에 대한 전송이 완료될 때까지 릴레이(Relay) 형태로 전달할 수 있다.
이후, 미디어 서버(230)는 SSDP에 따라 미디어 서버(230)가 불가용 상태임을 알리는 제3 SSDP 메시지를 원격 접속 서버(210)로 전송한다(S135). 이때 제3 SSDP 메시지의 필드값은 "ssdp:byebye"에 해당한다.
다음, 원격 접속 서버(210)는 수신된 제3 SSDP 메시지에 따라 원격단말제거(RemoveRemoteDevice) 호출을 프록시 서버(20)를 경유하거나 직접 원격 접속 클라이언트(130)로 전송한다(S137).
이후, 원격 접속 클라이언트(130)는 수신된 원격단말제거(RemoveRemoteDevice) 호출에 포함된 정보를 바탕으로 제3 SSDP 메시지에 대응하는 제4 SSDP 메시지를 생성한다(S139). 이때 제4 SSDP 메시지는 제3 SSDP 메시지와 동일한 정보를 포함한다.
이후, 원격 접속 클라이언트(130)는 제4 SSDP 메시지를 UPnP 단말(110)로 전달한다(S141). 이를 통해 제1 UPnP 네트워크(100)에 속하는 UPnP 단말(110)이 제2 UPnP 네트워크(200)에 속하는 미디어 서버(230)가 불가용 상태임을 알 수 있다.
다음은 도 3을 참고하여 본 발명의 실시예에 따른 원격 접속 서버가 UPnP 네트워크간의 원격 접속을 위해 수행하는 응용 계층 게이트웨이 방법에 대해 설명한다.
도 3은 본 발명의 실시예에 따른 응용 계층 게이트웨이 방법을 도시한 도면이다.
도 3에 도시된 바와 같이, 먼저, 원격 접속 서버(210)는 메시지를 수신한다(S301). 이때 원격 접속 서버(210)는 미디어 서버(230) 또는 UPnP 단말(110)로부터 메시지를 수신할 수 있다. 원격 접속 서버(210)는 미디어 서버(230)로부터 단순 서비스 발견 프로토콜(Simple Service Discovery Protocol, SSDP)을 따르는 SSDP 메시지를 수신할 수 있으며, 원격의 UPnP 단말(110)로부터 단순 객체 접근 프로토콜(Simple Object Access Protocol, 이하에서는 'SOAP'라고도 함)따르는 SOAP 요청 메시지 또는 하이퍼텍스트 전송 규약(HyperText Transfer Protocol, HTTP)을 따르는 정보 요청 메시지를 수신할 수 있다.
다음, 원격 접속 서버(210)는 수신된 메시지의 출발지 주소를 바탕으로 수신된 메시지의 출발지를 판단하여 결정한다(S303).
만약, 수신된 메시지의 출발지가 미디어 서버(230)인 경우, 원격 접속 서버(210)는 미디어 서버(230)로부터 수신된 SSDP 메시지의 필드값을 판단한다(S305).
만약, 수신된 SSDP 메시지의 필드값이 미디어 서버(230)가 가용 상태임을 알리는 "ssdp:alive"인 경우, 원격 접속 서버(210)는 원격의 UPnP 단말(110)로부터 미디어 서버(230)에 대한 정보 공유 요청을 대신 수신하기 위한 포트를 할당하기 위해 전송 제어 프로토콜(Transmission Control Protocol, 이하에서는 'TCP'라고도 함) 소켓을 생성한다(S307).
다음, 원격 접속 서버(210)는 원격 접속 서버(210)의 공인 IP주소 및 생성된 TCP 소켓의 포트 번호를 포함하는 원격단말추가(AddRemoteDevice) 호출을 원격 접속 클라이언트(130)로 프록시 서버(20)를 경유하거나 또는 직접 전달한다(S309).
한편, 이후에 미디어 서버(230)로부터 수신된 SSDP 메시지의 필드값이 미디어 서버(230)가 불가용 상태임을 알리는 "ssdp:byebye"인 경우, 원격 접속 서버(210)는 원격 접속 서버(210)의 공인 IP주소 및 TCP 소켓의 포트 번호를 포함하는 원격단말제거(RemoveRemoteDevice) 호출을 원격 접속 클라이언트(130)로 프록시 서버(20)를 경유하거나 또는 직접 전달한다(S311).
다음, 원격 접속 서버(210)는 미디어 서버(230)에 대한 정보 공유 요청을 원격의 UPnP 단말(110)로부터 대신 수신하기 위한 포트를 할당하기 위해 생성된 TCP 소켓을 삭제한다(S313).
한편, 수신된 메시지의 출발지가 원격의 UPnP 단말(110)인 경우, 원격 접속 서버(210)는 수신된 메시지의 목적지 포트 번호에 따라 제2 UPnP 네트워크(200) 상의 미디어 서버(230)와 TCP 연결을 설정한다(S315).
다음, 원격 접속 서버(210)는 원격의 UPnP 단말(110)로부터 수신된 메시지의 메시지 유형을 판단하여 결정한다(S317).
만약, 수신된 메시지가 미디어 서버(230)가 제공하는 서비스를 호출하는 SOAP 요청 메시지인 경우, 원격 접속 서버(210)는 수신된 SOAP 요청 메시지를 미디어 서버(230)와 설정된 TCP 연결을 통해 미디어 서버(230)로 전달한다(S319).
다음, 원격 접속 서버(210)는 미디어 서버(230)와 설정된 TCP 연결을 통해 미디어 서버(230)로부터 SOAP 응답 메시지를 수신한다(S321). 이때 수신된 SOAP 응답 메시지는 미디어 서버(230)의 사설 IP주소 및 포트 번호를 포함한다.
이후, 원격 접속 서버(210)는 수신된 SOAP 응답 메시지에 포함된 미디어 서버(230)의 사설 IP주소 및 포트 번호를 변환하여 조작된 SOAP 응답 메시지를 생성한다(S323). 이때 원격 접속 서버(210)는 미디어 서버(230)의 사설 IP주소를 원격 접속 서버(210)의 공인 IP주소로 변환하고, 미디어 서버(230)의 포트 번호를 원격의 UPnP 단말(110)로부터 미디어 서버(230)에 대한 정보 공유 요청을 대신 수신하기 위해 생성된 TCP 소켓의 포트 번호로 변환함으로써 조작된 SOAP 응답 메시지를 생성할 수 있다.
다음, 원격 접속 서버(210)는 조작된 SOAP 응답 메시지를 원격의 UPnP 단말(110)로 전달한다(S325).
이후, 원격 접속 서버(210)는 미디어 서버(230) 및 원격의 UPnP 단말(110)과 설정된 TCP 연결을 해제한다(S327).
한편, 수신된 메시지가 HTTP를 따르는 정보 요청 메시지인 경우, 원격 접속 서버(210)는 수신된 정보 요청 메시지에 따라 요청된 컨텐츠의 유형을 판단하여 결정한다(S329).
만약, 요청된 컨텐츠가 XML의 문서 형식을 따르는 텍스트 파일 또는 설정 파일인 경우, 원격 접속 서버(210)는 수신된 정보 요청 메시지를 미디어 서버(230)와 설정된 TCP 연결을 통해 미디어 서버(230)로 전달한다(S331).
다음, 원격 접속 서버(210)는 미디어 서버(230)와 설정된 TCP 연결을 통해 미디어 서버(230)로부터 정보 요청 응답 메시지를 수신한다(S333). 이때 수신된 정보 요청 응답 메시지는 미디어 서버(230)의 사설 IP주소 및 포트 번호를 포함한다.
이후, 원격 접속 서버(210)는 수신된 정보 요청 응답 메시지에 포함된 미디어 서버(230)의 사설 IP주소 및 포트 번호를 변환하여 조작된 정보 요청 응답 메시지를 생성한다(S335). 이때 원격 접속 서버(210)는 미디어 서버(230)의 사설 IP주소를 원격 접속 서버(210)의 공인 IP주소로 변환하고, 미디어 서버(230)의 포트 번호를 원격의 UPnP 단말(110)로부터 미디어 서버(230)에 대한 정보 공유 요청을 대신 수신하기 위해 생성된 TCP 소켓의 포트 번호로 변환함으로써 조작된 정보 요청 응답 메시지를 생성할 수 있다.
다음, 원격 접속 서버(210)는 조작된 정보 요청 응답 메시지를 원격의 UPnP 단말(110)로 전달한다(S337).
이후, 원격 접속 서버(210)는 미디어 서버(230) 및 원격의 UPnP 단말(110)과 설정된 TCP 연결을 해제한다(S339).
한편, 요청된 컨텐츠가 동영상 또는 사진 등의 미디어 컨텐츠 파일인 경우, 원격 접속 서버(210)는 수신된 정보 요청 메시지를 미디어 서버(230)와 설정된 TCP 연결을 통해 미디어 서버(230)로 전달한다(S341).
다음, 원격 접속 서버(210)는 미디어 서버(230)와 설정된 TCP 연결을 통해 미디어 서버(230)로부터 정보 요청 응답 메시지를 수신한다(S343).
이후, 원격 접속 서버(210)는 수신된 정보 요청 응답 메시지를 원격의 UPnP 단말(110)로 전달한다(S345).
다음, 원격 접속 서버(210)는 요청된 컨텐츠에 대한 전송 완료여부를 판단한다(S347).
만약, 요청된 컨텐츠에 대한 전송이 완료된 경우, 원격 접속 서버(210)는 미디어 서버(230) 및 원격의 UPnP 단말(110)과 설정된 TCP 연결을 해제한다(S349).
한편, 요청된 컨텐츠에 대한 전송이 완료되지 아니한 경우, 원격 접속 서버(210)는 요청된 컨텐츠에 대한 전송이 완료될 때까지 미디어 서버(230)로부터 정보 요청 응답 메시지를 수신하여 원격의 UPnP 단말(110)로 전달한다.
이상에서 설명한 본 발명의 실시예는 장치 및 방법을 통해서만 구현이 되는 것은 아니며, 본 발명의 실시예의 구성에 대응하는 기능을 실현하는 프로그램 또는 그 프로그램이 기록된 기록 매체를 통해 구현될 수도 있으며, 이러한 구현은 앞서 설명한 실시예의 기재로부터 본 발명이 속하는 기술분야의 전문가라면 쉽게 구현할 수 있는 것이다.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.
도 1은 본 발명의 실시예에 따른 네트워크 시스템의 구성을 도시한 도면이다.
도 2는 본 발명의 실시예에 따른 UPnP 네트워크간 원격 접속 방법을 도시한 도면이다.
도 3은 본 발명의 실시예에 따른 응용 계층 게이트웨이 방법을 도시한 도면이다.

Claims (8)

  1. 제1 범용 플러그 앤 플레이(Universal Plug and Play, 이하에서는 'UPnP'라고도 함) 네트워크와 제2 UPnP 네트워크간의 원격 접속 방법에 있어서,
    상기 제1 UPnP 네트워크는 서버 및 제1 UPnP 단말을 포함하고, 상기 제2 UPnP 네트워크는 클라이언트 및 제2 UPnP 단말을 포함하며,
    상기 방법은
    상기 서버가 상기 제1 UPnP 단말로부터 상기 제1 UPnP 단말이 가용 상태임을 알리는 제1 메시지를 수신하는 단계;
    상기 서버가 상기 제1 메시지에 따라 상기 클라이언트 또는 상기 제2 UPnP 단말로부터 상기 제1 UPnP 단말에 대한 정보 공유 요청을 대신 수신하기 위한 포트를 할당하기 위한 소켓을 생성하는 단계; 및
    상기 서버가 상기 서버의 인터넷 프로토콜(Internet Protocol, 이하에서는 'IP'라고도 함) 주소 및 상기 소켓의 포트 번호를 포함하는 원격단말추가 호출을 상기 클라이언트로 전달하는 단계를 포함하는 UPnP 네트워크에서의 원격 접속 방법.
  2. 제1항에 있어서,
    상기 방법은
    상기 서버가 상기 클라이언트 또는 상기 제2 UPnP 단말로부터 상기 소켓의 포트 번호를 포함하는 제2 메시지를 수신하는 단계; 및
    상기 서버가 상기 소켓의 포트 번호에 따라 상기 서버와 상기 제1 UPnP 단말간의 연결을 설정하는 단계를 더 포함하는 UPnP 네트워크에서의 원격 접속 방법.
  3. 제2항에 있어서,
    상기 방법은
    상기 서버가 설정된 연결을 통해 상기 제1 UPnP 단말로 제2 메시지를 전달하는 단계;
    상기 서버가 상기 설정된 연결을 통해 상기 제1 UPnP 단말로부터 상기 제2 메시지에 대한 응답 메시지를 수신하는 단계; 및
    상기 서버가 상기 응답 메시지를 상기 클라이언트 또는 상기 제2 UPnP 단말로 전달하는 단계를 더 포함하는 UPnP 네트워크에서의 원격 접속 방법.
  4. 제3항에 있어서,
    상기 응답 메시지는
    상기 제1 UPnP 단말의 IP 주소 및 상기 제1 UPnP 단말의 포트 번호를 포함하며,
    상기 서버가 상기 응답 메시지를 상기 클라이언트 또는 상기 제2 UPnP 단말로 전달하는 단계는
    상기 제2 메시지가 텍스트 파일 또는 설정 파일을 요청하는 정보 요청 메시 지이거나 상기 제1 UPnP 단말의 서비스를 호출하는 서비스 호출 메시지인 경우, 상기 서버가 상기 응답 메시지에 포함된 상기 제1 UPnP 단말의 IP 주소 및 상기 제1 UPnP 단말의 포트 번호를 변경하여 조작된 응답 메시지를 생성하는 단계; 및
    상기 서버가 상기 조작된 응답 메시지를 상기 클라이언트 또는 상기 제2 UPnP 단말로 전달하는 단계를 포함하는 UPnP 네트워크에서의 원격 접속 방법.
  5. 제4항에 있어서,
    상기 조작된 응답 메시지를 생성하는 단계는
    상기 서버가 상기 제1 UPnP 단말의 IP 주소 및 상기 제1 UPnP 단말의 포트 번호를 각각 상기 서버의 IP 주소 및 상기 소켓의 포트 번호로 변경하는 UPnP 네트워크에서의 원격 접속 방법.
  6. 제5항에 있어서,
    상기 제1 UPnP 단말의 IP 주소는
    상기 서버로부터 할당된 사설 IP 주소인 UPnP 네트워크에서의 원격 접속 방법.
  7. 제3항에 있어서,
    상기 서버가 상기 응답 메시지를 상기 클라이언트 또는 상기 제2 UPnP 단말로 전달하는 단계는
    상기 제2 메시지가 미디어 컨텐츠 파일을 요청하는 정보 요청 메시지인 경우, 상기 서버가 상기 응답 메시지를 상기 클라이언트 또는 상기 제2 UPnP 단말로 미디어 컨텐츠 파일에 대한 전송이 완료될 때까지 릴레이 형태로 전달하는 UPnP 네트워크에서의 원격 접속 방법.
  8. 제1항에 있어서,
    상기 방법은
    상기 서버가 상기 제1 UPnP 단말로부터 상기 제1 UPnP 단말이 불가용 상태임을 알리는 제2 메시지를 수신하는 단계;
    상기 서버가 상기 제2 메시지에 따라 상기 소켓의 포트 번호에 대응하는 포트가 해제되었음을 알리는 원격단말제거 호출을 상기 클라이언트로 전달하는 단계; 및
    상기 서버가 상기 소켓을 삭제하는 단계를 더 포함하는 UPnP 네트워크에서의 원격 접속 방법.
KR1020090096459A 2009-10-09 2009-10-09 범용 플러그 앤 플레이 네트워크에서의 원격 접속 방법 KR101651640B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090096459A KR101651640B1 (ko) 2009-10-09 2009-10-09 범용 플러그 앤 플레이 네트워크에서의 원격 접속 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090096459A KR101651640B1 (ko) 2009-10-09 2009-10-09 범용 플러그 앤 플레이 네트워크에서의 원격 접속 방법

Publications (2)

Publication Number Publication Date
KR20110039142A true KR20110039142A (ko) 2011-04-15
KR101651640B1 KR101651640B1 (ko) 2016-08-26

Family

ID=44045988

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090096459A KR101651640B1 (ko) 2009-10-09 2009-10-09 범용 플러그 앤 플레이 네트워크에서의 원격 접속 방법

Country Status (1)

Country Link
KR (1) KR101651640B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101108137B1 (ko) * 2011-08-24 2012-01-31 주식회사알앤티에스미디어 네트워크를 이용한 무선 단말기 상호간의 데이타 전송 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060001550A (ko) * 2004-06-30 2006-01-06 엘지전자 주식회사 인터넷을 이용한 UPnP 디바이스 제어 방법
KR20070048922A (ko) * 2005-11-07 2007-05-10 한국전자통신연구원 홈네트워크 간 미디어 컨텐츠 공유 시스템 및 그 방법
KR20070109076A (ko) * 2006-05-09 2007-11-15 (주)엘스윈 홈 게이트웨이를 이용한 원격지에서의 컴퓨터 전원제어와 홈 네트워크의 제어 시스템

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060001550A (ko) * 2004-06-30 2006-01-06 엘지전자 주식회사 인터넷을 이용한 UPnP 디바이스 제어 방법
KR20070048922A (ko) * 2005-11-07 2007-05-10 한국전자통신연구원 홈네트워크 간 미디어 컨텐츠 공유 시스템 및 그 방법
KR20070109076A (ko) * 2006-05-09 2007-11-15 (주)엘스윈 홈 게이트웨이를 이용한 원격지에서의 컴퓨터 전원제어와 홈 네트워크의 제어 시스템

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101108137B1 (ko) * 2011-08-24 2012-01-31 주식회사알앤티에스미디어 네트워크를 이용한 무선 단말기 상호간의 데이타 전송 방법

Also Published As

Publication number Publication date
KR101651640B1 (ko) 2016-08-26

Similar Documents

Publication Publication Date Title
US8301691B2 (en) Server apparatus, network system, data transfer method, and program
CN101473597B (zh) 远程访问通用即插即用装置的方法和***
KR100733962B1 (ko) 홈네트워크 간 미디어 컨텐츠 공유 시스템 및 그 방법
JP4624701B2 (ja) ネットワークを介した機器情報の管理装置およびその方法
US20080235358A1 (en) Proxy Device, Network System, and Communication Method
US7912972B2 (en) Method of controlling device connected to universal plug and play home network via internet, and system and device for the method
JP2010515338A (ja) サービス発見のための方法と装置
KR101531532B1 (ko) 원격 접속에 기초해 홈 네트워크 디바이스의 서비스를 이용하는 방법 및 장치
US8526352B2 (en) Method of controlling an entity of a remote network from a local network
JP2007115253A (ja) ホームネットワークでデバイスを独占的に制御するための方法及び装置
US20090254671A1 (en) Remote control of a device by a terminal
JP4886712B2 (ja) アクセス制御システム、アクセス制御方法、アクセス制御装置およびアクセス制御プログラム
KR101632753B1 (ko) 단말 관리 서비스를 제공하는 중개 단말 및 방법
JP2010004344A (ja) リモートアクセスを行う方法、装置、システム及びプログラム
JP2005269348A (ja) 通信システム、ゲートウェイ装置
KR100953093B1 (ko) 이종 UPnP네트워크를 통한 멀티미디어 서비스 방법 및 시스템
KR101651640B1 (ko) 범용 플러그 앤 플레이 네트워크에서의 원격 접속 방법
KR101238907B1 (ko) 사설망에 위치한 미디어 서버의 컨텐츠를 원격지 사설망에 위치한 미디어 랜더러에 공유시키는 홈 게이트웨이 및 컨트롤 포인트
JP4077417B2 (ja) ゲートウェイ装置、ゲートウェイ装置を用いたメディア送受信方法、メディア送受信プログラム、および記録媒体
KR20140086358A (ko) 홈네트워크 간 미디어 컨텐츠 공유 방법
JP5184572B2 (ja) サービス提供装置、サービス提供方法およびサービス提供プログラム
JP5784059B2 (ja) 通信制御方法、ローカル装置、情報処理端末、通信経路確立支援装置及びプログラム
JP6101312B2 (ja) 通信装置及びその制御方法及びプログラム
KR20060067713A (ko) 홈 네트워크에서의 UPnP 카메라를 이용한 홈 뷰어서비스 제공 장치 및 그 방법
EP2418821B1 (fr) Procédé de commande d'une entité d'un premier réseau à partir d'un deuxième réseau

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190731

Year of fee payment: 4