KR20040045185A - 범용 플러그앤플레이를 지원하기 위한 프록시 장치 및 그동작방법 - Google Patents

범용 플러그앤플레이를 지원하기 위한 프록시 장치 및 그동작방법 Download PDF

Info

Publication number
KR20040045185A
KR20040045185A KR1020020073229A KR20020073229A KR20040045185A KR 20040045185 A KR20040045185 A KR 20040045185A KR 1020020073229 A KR1020020073229 A KR 1020020073229A KR 20020073229 A KR20020073229 A KR 20020073229A KR 20040045185 A KR20040045185 A KR 20040045185A
Authority
KR
South Korea
Prior art keywords
upnp
information
bluetooth
action
play
Prior art date
Application number
KR1020020073229A
Other languages
English (en)
Other versions
KR100501899B1 (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 KR10-2002-0073229A priority Critical patent/KR100501899B1/ko
Publication of KR20040045185A publication Critical patent/KR20040045185A/ko
Application granted granted Critical
Publication of KR100501899B1 publication Critical patent/KR100501899B1/ko

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/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Automation & Control Theory (AREA)
  • Small-Scale Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

1. 청구범위에 기재된 발명이 속한 기술분야
본 발명은, UPnP(Universal Plug and Play)를 지원하기 위한 위한 프록시 장치 및 그 동작 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것임.
2. 발명이 해결하려고 하는 기술적 과제
본 발명은, UPnP 기능을 가지고 있지 않은 기기들을 외부의 UPnP 제어포인트 등에서 UPnP 방식으로 제어할 수 있도록 하기 위한 프록시 장치 및 그 동작 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는데 그 목적이 있음.
3. 발명의 해결방법의 요지
본 발명은, 범용 플러그앤플레이(UPnP)를 지원하기 위한 프록시 장치에 있어서, UPnP로 제어되지 않는 기기들에 대한 정보를 검색하기 위한 기기 검색 수단; 상기 기기 검색 수단에서 검색된 정보들을 이용하여 기술정보 테이블을 생성하기 위한 기술정보 자동생성 수단; 상기 기술정보 자동생성 수단에서 생성된 상기 기술정보 테이블을 저장하기 위한 기술정보 테이블 저장 수단; 및 외부의 UPnP 제어포인트에서 전송된 멀티캐스트 메세지 또는 질의 메세지 등과 같은 메세지를 전달받아 상기 기술정보 테이블 저장 수단을 검색하여 그 검색 결과를 상기 UPnP 제어포인트로 전달하기 위한 UPnP 메세지 처리 수단을 포함함.
4. 발명의 중요한 용도
본 발명은 UPnP 홈네트웍상의 UPnP 제어포인트 등에서 비 UPnP 기기를 제어하는데 이용됨.

Description

범용 플러그앤플레이를 지원하기 위한 프록시 장치 및 그 동작 방법{Proxy Apparatus and Controlling Method for Universal Plug and Play}
본 발명은, 홈 네트웍상의 UPnP(Universal Plug and Play) 제어포인트 등에서 UPnP 기능이 없는 기기들을 UPnP 방식으로 제어할 수 있도록 하기 위한 프록시 장치 및 그 동작 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것으로, 더욱 상세하게는 UPnP 기능을 가지고 있지 않은 기기들을, 기존의 프로토콜과 구조를 변경하지 않고, UPnP 홈 네트웍상의UPnP 제어포인트 등에서 UPnP 방식으로 제어할 수 있도록 하기 위한 프록시 장치 및 그 동작 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것이다.
이하의 일예에서는 UPnP 기능이 없는 블루투스 기기를 UPnP 홈 네트웍상의 UPnP 제어포인트 등에서 제어할 수 있도록 하기 위한 UPnP-블루투스 프록시 장치와 그 동작 방법을 예로 들어 설명하기로 한다.
인터넷 기반의 서비스 발견 기능을 가지고 있는 UPnP는 컴퓨터를 비롯한 여러 가전기기로 구성된 홈 네트웍 환경을 제어하는데 있어서 큰 부분을 차지한다. 그런데, 이러한 UPnP 기능이 지원되기 위해서 각 기기들은 먼저 인터넷 기반의 HTTP(Hyper Text Transfer Protocol)와 XML(Extensible Markup Language)을 지원해야 한다. LAN(Local Area Network) 환경에 접속되어 IP를 기본적으로 지원하는 컴퓨터나 각 장치들은 상기의 UPnP 기반의 미들웨어 환경 구축이 어렵지 않으나, 블루투스 등으로 홈 네트워킹에 참여하려는 소형 기기나 가전기기들은 그 메모리 용량과 전력 문제로 인하여 IP 기반의 HTTP와 XML이 탑재되기가 어렵기 때문에, 결과적으로 UPnP를 지원할 수 없다.
또한, 블루투스 기기들은 대부분 배터리 기반이며, 마이크로 프로세서로 이루어진 소형의 내장형 기기의 특성을 가지므로, 임의의 UPnP 제어포인트에서 블루투스 기기 검색을 위한 접근 허용이나 응답을 하는 것은 전력 소비를 발생시키고 현재 수행하고 있는 작업을 방해하게 되는 문제점이 있다.
본 발명은, 상기 문제점을 해결하기 위하여 제안된 것으로, UPnP 기능을 가지고 있지 않은 기기들을 외부의 UPnP 제어포인트 등에서 UPnP 방식으로 제어할 수 있도록 하기 위한 프록시 장치 및 그 동작 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는데 그 목적이 있다.
도 1 은 본 발명이 적용되는 UPnP 홈네트웍 시스템의 일예시도.
도 2 는 본 발명의 일실시예에 따른 UPnP-블루투스 프록시 장치의 구성도.
도 3a 는 본 발명의 일실시예에 따른 블루투스 기기 검색기가 SDP를 통하여 검색한 정보에 대한 상세 구조도.
도 3b 는 본 발명의 일실시예에 따른 기술정보 자동생성기가 생성한 XML 형식의 UPnP 기기 기술자 테이블과 액션 테이블을 인덱싱하기 위한 테이블에 대한 상세 구조도.
도 3c 는 본 발명의 일실시예에 따른 기술정보 자동생성기가 생성한 XML 형식을 따르는 UPnP 기기 기술 테이블에 대한 상세 구조도.
도 3d 는 본 발명의 일실시예에 따른 기술정보 자동생성기가 생성한 XML 형식을 따르는 UPnP 서비스 기술 테이블에 대한 상세 구조도.
도 3e 는 본 발명의 일실시예에 따른 기술정보 자동생성기가 생성한 XML 형식을 따르는 액션(action) 테이블에 대한 상세 구조도.
도 4 는 본 발명의 일실시예에 따른 UPnP-블루투스 프록시 장치의 동작 방법에 대한 전체 흐름도.
도 5a 는 본 발명의 일실시예에 따른 UPnP-블루투스 프록시 장치가 초기화되었을 경우 기술정보 테이블의 생성 과정에 대한 상세 흐름도.
도 5b 는 본 발명의 일실시예에 따른 UPnP-블루투스 프록시 장치가 동작 중 임의의 장치가 추가되었을 경우 기술정보 테이블의 생성 과정에 대한 상세 흐름도.
도 6 은 본 발명의 일실시예에 따른 UPnP-블루투스 프록시 장치에서 메세지를 처리하는 과정에 대한 상세 흐름도.
* 도면의 주요 부분에 대한 부호의 설명
21 : 블루투스 기기 검색기 22 : 기술정보 자동생성기
23 : 기술정보 테이블 저장부 24 : UPnP 메세지 처리기
상기 목적을 달성하기 위한 본 발명의 장치는, 범용 플러그앤플레이(UPnP)를 지원하기 위한 프록시 장치에 있어서, UPnP로 제어되지 않는 기기들에 대한 정보를 검색하기 위한 기기 검색 수단; 상기 기기 검색 수단에서 검색된 정보들을 이용하여 기술정보 테이블을 생성하기 위한 기술정보 자동생성 수단; 상기 기술정보 자동생성 수단에서 생성된 상기 기술정보 테이블을 저장하기 위한 기술정보 테이블 저장 수단; 및 외부의 UPnP 제어포인트에서 전송된 멀티캐스트 메세지 또는 질의 메세지 등과 같은 메세지를 전달받아 상기 기술정보 테이블 저장 수단을 검색하여 그 검색 결과를 상기 UPnP 제어포인트로 전달하기 위한 UPnP 메세지 처리 수단을 포함하는 것을 특징으로 한다.
한편, 본 발명의 방법은, 범용 플러그앤플레이를 지원하기 위한 프록시 장치의 동작 방법에 있어서, 기기 검색기가 UPnP로 제어되지 않는 기기들에 대한 정보를 검색하는 제 1 단계; 기술정보 자동생성기가 상기 기기 검색기에서 검색된 정보들을 이용하여 기술정보 테이블을 생성하는 제 2 단계; 상기 기술정보 자동생성기에서 생성된 상기 기술정보 테이블을 기술정보 테이블 저장부에 저장하는 제 3 단계; 및 UPnP 메세지 처리기가 외부의 UPnP 제어포인트에서 전송된 멀티캐스트 메세지 또는 질의 메세지 등과 같은 메세지를 전달받아 상기 기술정보 테이블 저장부를 검색하여 그 검색 결과를 상기 UPnP 제어포인트로 전달하는 제 4 단계를 포함하는 것을 특징으로 한다.
한편, 본 발명은, UPnP로 제어되지 않는 기기들과 UPnP 제어포인트를 연결하기 위하여, 프로세서를 구비한 프록시 장치에, 기기 검색기가 UPnP로 제어되지 않는 기기들에 대한 정보를 검색하는 제 1 기능; 기술정보 자동생성기가 상기 기기 검색기에서 검색된 정보들을 이용하여 기술정보 테이블을 생성하는 제 2 기능; 상기 기술정보 자동생성기에서 생성된 상기 기술정보 테이블을 기술정보 테이블 저장부에 저장하는 제 3 기능; 및 UPnP 메세지 처리기가 외부의 UPnP 제어포인트에서 전송된 멀티캐스트 메세지 또는 질의 메세지 등과 같은 메세지를 전달받아 상기 기술정보 테이블 저장부를 검색하여 그 검색 결과를 상기 UPnP 제어포인트로 전달하는 제 4 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
이처럼 본 발명에서는, UPnP 기능이 탑재될 수 없는 블루투스 기기를 외부의 UPnP 제어포인트 등에서 제어할 수 있도록 브리지 시스템을 마련하여 블루투스 기기들의 응용 프로그램 또는 프로파일과 UPnP 미들웨어를 연결(bridging)하고 블루투스 기기들의 정보를 프록시(proxy)하는 프로그램을 적재하여 UPnP 기능이 없는 블루투스 기기들을 외부 UPnP 제어포인트 등에서 UPnP 방식으로 제어할 수 있도록하는 것을 특징으로 한다.
상술한 목적, 특징들 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명한다.
도 1 은 본 발명이 적용되는 UPnP 홈네트웍 시스템의 일예시도이다.
도 1 에 도시된 바와 같이, UPnP로 제어되지 않는 블루투스 기기들이 피코넷(11)으로 구성되어 있다. 이 때, UPnP-블루투스 프록시 장치(12)는 블루투스 모뎀과 SDP를 통하여 주변의 UPnP로 제어되지 않는 블루투스 기기들로 구성된 피코넷(11)과 연결되어 마스터로 동작하고, 슬레이브로 동작하는 피코넷(11)을 구성하는 UPnP로 제어되지 않는 블루투스 기기들을 관리한다. 또한, UPnP-블루투스 프록시 장치(12)는 IP 기반의 HTTP를 지원하는 홈 네트웍(13)과 연결되어 피코넷(11)과 홈 네트웍(13)을 연결하는 중계 역할을 한다.
도 2 는 본 발명의 일실시예에 따른 UPnP-블루투스 프록시 장치의 구성도이다.
도 2 에 도시된 바와 같이, 본 발명에 따른 UPnP-블루투스 프록시 장치는, UPnP로 제어되지 않는 블루투스 기기들에 대한 정보를 검색하기 위한 블루투스 기기 검색기(21), 상기 블루투스 기기 검색기(21)에서 검색된 정보들을 이용하여 기술정보 테이블 즉, UPnP 기기 기술 테이블(도 3c), UPnP 서비스 기술 테이블(도 3d), 액션 테이블(도 3e) 및 상기 UPnP 기기 기술 테이블(도 3c)과 액션 테이블(도 3e)을 인덱싱할 수 있는 테이블(도 3b)을 생성하기 위한 기술정보 자동생성기(22),상기 기술정보 자동생성기(22)에서 생성된 상기 기술정보 테이블을 저장하기 위한 기술정보 테이블 저장부(23)및 홈 네트웍상의 UPnP 제어포인트 등으로부터 전달받은 멀티캐스트 메세지 또는 질의 메세지 등과 같은 메세지를 분석한 후에 그 분석 결과에 따라 상기 기술정보 저장부(23)의 기술정보 테이블을 검색하여 XML 형식의 해당 UPnP 기기 기술 테이블(도 3c)과 UPnP 서비스 기술 테이블(도 3d)을 전달하기 위한 UPnP 메세지 처리기(24)를 포함한다. 상기 각 구성 요소의 동작을 좀 더 상세히 살펴보면 다음과 같다.
상기 블루투스 기기 검색기(21)는 블루투스 자체 프로토콜인 SDP(Service Discovery Protocol)를 이용하여 피코넷(11) 내의 UPnP로 제어되지 않는 블루투스 기기들의 서비스 정보를 검색하여 검색된 정보(도 3a)를 기술정보 자동생성기(22)로 전달한다.
상기 기술정보 자동생성기(22)는 블루투스 기기 검색기(21)로부터 전달받은 정보(도 3a)를 이용하여 기술정보 테이블 즉, 각 기기들에서 UPnP에서 요구하는 XML 형식에 맞추어 생성한 UPnP 기기 기술 테이블(도 3c), 상기 UPnP 기기 기술 테이블의 서비스 목록이 기록된 UPnP 서비스 기술 테이블(도 3d), UPnP 서비스 기술 테이블 내의 액션(action) 항목의 값과 실제로 서비스를 수행하기 위해 호출되는 응용프로그램의 활성화 위치가 기록된 액션 테이블(도 3e) 및 상기 UPnP 기기 기술 테이블(도 3c)과 액션 테이블(도 3e)을 인덱싱하기 위한 테이블(도 3b)을 생성한다. 이렇게 생성된 상기 기술정보 테이블은 임의의 UPnP 제어포인트에서 질의 메세지가 있을 경우, UPnP 메세지 처리기(24)에서 검색할 수 있도록 기술정보 테이블저장부(23)에 저장된다.
상기 UPnP 메세지 처리기(24)는 홈 네트웍상의 UPnP 제어포인트에서 전송되는 멀티캐스트 메세지 또는 질의 메세지를 수신하여 분석한 다음, 그 분석결과에 따라 상기 기술정보 테이블 저장부(23)의 기술정보 테이블을 검색하여 그 검색 결과를 해당 UPnP 제어포인트로 전달한다. 이 때, 통신 형태는 IP 기반의 HTTP이며, 기기와 서비스에 대한 정보인 UPnP 기기 기술 테이블과 UPnP 서비스 기술 테이블은 XML 형태로 전송된다.
도 3a 는 본 발명의 일실시예에 따른 블루투스 장치 검색기가 SDP를 통하여 검색한 정보에 대한 상세 구조도이다.
도 3a 에 도시된 바와 같이, 블루투스 기기 검색기(21)가 SDP를 통해 검색한 정보에는 서비스 기록 핸들(ServiceRecordHandle), 서비스 클래스 아이디 리스트(ServiceClassIDList), 서비스 아이디(ServiceID), 프로토콜 디스크립터 목록(ProtocolDescriptorList), 브라우저 그룹 목록(BrowseGroupList), 서비스 정보 존재 시간(ServiceInfoTimeToLive), 블루투스 프로파일 디스크립트 목록(BluetoothProfileDescritprList), 문서의 위치(DocumentationURL), 클라이언트 활성화 위치(ClientExcutationURL), 아이콘 위치(IconURL), 서비스 이름(ServiceName), 서비스 묘사(ServiceDescription), 제공자 이름(ProviderName)이 포함되어 있다.
이를 좀 더 상세하게 살펴보면, 서비스 기록 핸들(ServiceRecordHandle)은 SDP 서버에서 유지하고 있는 서비스 레코드 핸들로서, 하나의 서버에서 한 레코드에 대해 유일한 번호를 지정한다. 서비스 클래스 아이디 리스트(ServiceClassIDList)는 서비스 레코드에 의해 표현된 서비스 형식을 지정한다. 서비스 아이디(ServiceID)는 서비스의 한 인스턴트를 유일하게 지정한다. 프로토콜 디스크립터 목록(ProtocolDescriptorList)은 서비스를 이용하는데 사용되는 프로토콜 스택을 나열한다. 브라우저 그룹 목록(BrowseGroupList)은 서비스 레코드가 속한 브라우저 그룹을 나타낸다. 서비스 정보 존재 시간(SerciceInfoTimeToLive)은 서비스 내의 정보가 유효하고 불변한 상태로 있도록 기대되는 시간으로 클라이언트가 적절한 폴링 인터발을 결정하는데 사용될 수 있다. 블루투스 프로파일 디스크립트 목록(BluetoothProfileDescritprList)은 블루투스 프로파일에 관한 정보를 나타낸다. 문서 위치(DocumentationURL)는 서비스를 간략하게 설명한 문서의 위치, 즉 URL 주소를 나타낸다. 클라이언트 활성화 위치(ClientExcutationURL)는 서비스를 이용할 수 있는 응용 프로그램의 위치를 나타낸다. 아이콘 위치(IconURL)는 서비스를 표현하는데 사용되는 아이콘 이미지를 나타낸다. 서비스 이름(ServiceName)은 사용자가 읽을 수 있게 표현된 서비스 이름을 나타낸다. 서비스 묘사(ServiceDescription)는 서비스를 설명하는 텍스트 스트링을 나타낸다. 제공자 이름(ProviderName)은 서비스를 제공하는 조직이나 개인의 이름을 텍스트로 표시하여 나타낸다.
도 3b 는 본 발명의 일실시예에 따른 기술정보 자동생성기가 생성한 XML 형식의 UPnP 기기 기술 테이블과 액션 테이블을 인덱싱하기 위한 테이블에 대한 상세 구조도이다.
도 3b 에 도시된 바와 같이, 상기 UPnP 기기 기술 테이블과 액션 테이블을 인덱싱하기 위한 테이블은 블루투스 기기 고유번호, 블루투스 서비스 핸들, 기기 위치(URL), UPnP 기기 기술 테이블의 위치, 액션 테이블 위치를 포함한다.
이를 좀 더 상세하게 살펴보면, 블루투스 기기 고유번호와 블루투스 서비스 핸들은 고정된 값으로 블루투스 규격을 따른다. 외부 식별자인 기기 위치(URL)는 피코넷 외부의 IP 망에서 식별할 수 있도록 블루투스 기기의 위치에 대한 정보가 기록된다. UPnP 기기 기술 테이블 위치와 액션 테이블 위치는 절대적인 베이스에 근거한 상대적 위치 즉, 기준 위치를 정하고 상기 기준 위치로부터 상대적으로 정한 위치를 의미한다.
도 3c 는 본 발명의 일실시예에 따른 기술정보 자동생성기가 생성한 XML 형식을 따르는 UPnP 기기 기술 테이블에 대한 상세 구조도이다.
도 3c 에 도시된 바와 같이, UPnP 기기 기술 테이블은 기기의 URL주소, 사용자에게 친숙한 기기 이름, 제조사 정보(이름, URL), 기기 고유 번호(UDN(UUID)), 서비스 정보 리스트(서비스 형태, 서비스 ID, 서비스 기술 테이블 유알엘(URL), 제어 유알엘(control URL), 이벤트 유알엘(event URL))를 포함하고 있다.
상기 서비스 정보 리스트는 UPnP 기기의 서비스 정보를 가지고 있고, 서비스 기술 테이블 위치(rul)에는 해당 UPnP 서비스 기술 테이블의 위치 정보가 기록되며, 제어 위치(url)를 통해서 상기 서비스 기술 테이블을 이용한 서비스를 제어한다. 이러한 모든 동작은 UPnP 규격에 따른다.
도 3d 는 본 발명의 일실시예에 따른 기술정보 자동생성기가 생성한 XML 형식을 따르는 UPnP 서비스 기술 테이블에 대한 상세 구조도로서, 상기 UPnP 서비스 기술 테이블의 위치는 UPnP 기기 기술 테이블의 서비스 기술 테이블 위치(url)에 기록된다.
상기 UPnP 서비스 기술 테이블의 내용을 살펴보면, 액션 필드에는 UPnP 제어포인트에서 사용하고자 하는 서비스 액션의 이름이 기록되고, 인자(arguments)정보 필드에는 액션에 사용되는 입출력에 관련된 파라미터가 기록된다. 그리고 상태 변수 테이블에 기록된 상태 변수들은 해당 서비스에서 이벤트가 발생하였을 때, 관련된 변수들의 값을 변경하여 서비스를 이용하고자 하는 외부의 기기들에게 알리는 역할을 한다. 이러한 모든 동작은 UPnP 규격에 따른다.
도 3e 는 본 발명의 일실시예에 따른 기술정보 자동생성기가 생성한 XML 형식을 따르는 액션(action) 테이블에 대한 상세 구조도이다.
도 3e 에 도시된 바와 같이, 상기 액션 테이블에는 UPnP 서비스 기술 테이블 내의 액션(action) 필드에 기록된 액션 이름과 실제로 서비스를 수행하기 위해 호출되는 응용프로그램의 활성화 위치가 기록된다. 여기서, 응용 프로그램의 활성화 위치란 액션 이름에 따라 수행되어야 할 관련 블루투스 기기 접속 제어를 위한 프로그램의 위치, 또는 블루투스 표준에서 지정된 프로파일의 활성화 위치를 의미한다.
도 4 는 본 발명의 일실시예에 따른 UPnP-블루투스 프록시 장치의 동작 방법에 대한 전체 흐름도이다.
먼저, 블루투스 기기 검색기(21)는 피코넷 내의 UPnP로 제어되지 않는 블루투스 기기들을 검색하여, 새로운 기기가 검색되면 그 기기에 대한 서비스 정보(도 3a)를 얻는다. 이렇게 얻은 상기 서비스 정보(도 3a)를 기술정보 자동생성기(22)로 전송한다(401).
그러면, 기술정보 자동생성기(22)는 상기 블루투스 기기 검색기(21)로부터 전송받은 서비스 정보(도 3a)를 이용하여 기술정보 테이블 즉, 각 기기들에서 UPnP에서 요구하는 XML 형식에 맞추어 생성한 UPnP 기기 기술 테이블(도 3c), 상기 UPnP 기기 기술 테이블(도 3c)의 서비스 목록이 기록된 UPnP 서비스 기술 테이블(도 3d), 상기 UPnP 서비스 기술 테이블(도 3d) 내의 액션(action) 항목의 값과 실제로 서비스를 수행하기 위해 호출되는 응용프로그램의 위치를 표기한 액션 테이블(도 3e), 상기 UPnP 기기 기술 테이블(도 3c)과 액션 테이블(도 3e)을 인덱싱하기 위한 테이블(도 3b)을 생성한다.
하지만 블루투스의 SDP를 이용하여 검색한 정보에는 서비스 정보만이 기록되어 있을 뿐, 접근 방법이나 제어 방법, 브로커링 등에 대한 정보는 없기 때문에, UPnP에서 요구되는 모든 정보가 기록된 상태가 아니다. 따라서, 블루투스 기기 검색기(21)의 SDP를 통하여 검색된 정보들을 전송받은 기술정보 자동생성기(22)는 그 정보를 이용하여 생성한 UPnP 기기 기술 테이블(도 3c)의 외부 식별자 역할을 하는기기 위치(url) 필드에 프록시 장치의 주소와 내부 식별자를 조합하여 기록한다. 또한, UPnP 서비스 기술 테이블(도 3d)의 액션 필드에 서비스 내용을 대표하는 액션 이름을 기록하고, 실제적으로 블루투스 기기들을 활성화시키는 시작 주소는 액션 테이블(도 3e)에 기록한다. 액션을 활성화시키는 시작 주소는 슬레이브로 동작하는 블루투스 기기들을 활성화시키는 마스터의 명령을 수행하는 함수 위치를 뜻하며, 블루투스 산업회에서 제시한 표준 응용 규격인 프로파일이거나 단순히 기기의 접속을 열고 서비스를 이용하려는 응용 프로그램이다. 상기 응용 프로그램의 활성화 위치를 획득하는 방법에는 도 3a 의 클라이언트 활성화 위치(ClientExecutableURL)의 값을 입력하거나 그 값이 존재하지 않을 경우, 프록시 장치 내에서 유지하고 있는 해당 블루투스 슬레이브 장치의 프로파일 함수의 위치, 또는 프로그램의 시작 함수 위치를 기입한다(402).
이후, 상기 생성된 기술정보 테이블을 UPnP 메세지 처리기(24)에서 쉽게 이용할 수 있도록 기술정보 테이블 저장부(23)에 저장한다(403).
이후, 임의의 UPnP 제어포인트 등에서 멀티캐스트 메세지 또는 메세지 질의 등과 같은 서비스 요청이 들어오면, UPnP 메세지 처리기(24)는 이 메세지를 수신하여 분석한 다음, 그 분석 결과에 따라 기술정보 테이블 저장부(23)의 기술정보 테이블을 검색하여 해당 메세지에 대한 검색 결과를 전송한다(404).
도 5a 는 본 발명의 일실시예에 따른 UPnP-블루투스 프록시 장치가 초기화되었을 경우 기술정보 테이블의 생성 과정에 대한 일실시예 상세 흐름도이다.
먼저, UPnP-블루투스 프록시 장치에 전원이 들어와 초기화되면 UPnP-블루투스 프록시 장치가 활성화되어 마스터가 되고(501), 슬레이브로 동작되는 피코넷(11)이 생성된다(502). 블루투스 기기 검색기(21)가 SDP를 통하여 피코넷(11)에 연결되어 있는 UPnP로 제어되지 않는 블루투스 기기들을 검색하여(503), 검색 결과, 새로 검색된 블루투스 기기들이 없으면 종료하고, 새로검색된 블루투스 기기들이 존재하면 검색 결과를 기술정보 자동생성기(22)로 전송한다(504).
그러면, 기술정보 자동생성기(22)는 검색된 정보를 이용하여 기술 정보 테이블 즉, UPnP 기기 기술 테이블, UPnP 서비스 기술 테이블, 액션 테이블, UPnP 기기 기술 테이블과 액션 테이블을 인덱싱할 수 있는 테이블을 생성한다(505). 하지만, 여기서 생성된 기술정보 테이블에는 모든 정보가 기록된 상태가 아니다. 따라서, UPnP-블루투스 프록시 장치에 의해 조회된 기기를 제어하는 응용프로그램이 존재하는가를 판단하여(506), 판단결과 응용 프로그램이 존재하면 UPnP 서비스 기술 테이블의 액션 필드에 액션 이름을 기입하고, 액션 테이블에 상기 액션 이름과 응용 프로그램의 활성화 위치를 기록한 후(508), 509 과정으로 진행한다. 만약, 응용 프로그램이 존재하지 않으면 기기 접속 해제를 UPnP 서비스 기술 테이블과 액션 테이블에 기입하고(507), 509 과정으로 진행한다.
이후, 상기 생성된 기술정보 테이블에 기록된 정보의 변경 및 수정할 내용이 있으면(509) 사용자가 정보의 변경 및 수정을 하고(510), 검색된 기기가 더 존재하는지 판단한다(511). 한편, 상기 생성된 기술정보 테이블에 기록된 정보의 변경 및 수정할 내용이 없으면 바로 검색된 기기가 더 존재하는가를 판단한다(511). 판단결과, 검색된 기기가 더 있으면 상기 506 과정부터 반복 수행하고, 존재하지 않을 경우는 종료한다.
도 5b 는 본 발명의 일실시예에 따른 UPnP-블루투스 프록시 장치가 동작중 임의의 기기가 추가되었을 경우, 기술정보 테이블의 생성 과정에 대한 상세 흐름도이다.
먼저, UPnP-블루투스 프록시 장치가 동작하고 있는 중에 슬레이브로 동작하는 임의의 블루투스 기기가 추가되면(521), UPnP-블루투스 프록시 장치내의 블루투스 기기 검색기(21)는 SDP를 이용하여 슬레이브로 동작되는 추가된 블루투스 기기만을 검색하여(522), 검색 결과를 기술정보 자동생성기(22)로 전송한다(523).
그러면, 기술정보 자동생성기(22)는 검색된 정보를 이용하여 기술정보 테이블 즉, UPnP 기기 기술 테이블(도 3c), UPnP 서비스 기술 테이블(도 3d), 액션 테이블(도 3e), UPnP 기기 기술 테이블(도 3c)과 액션 테이블(도 3e)을 인덱싱할 수 있는 테이블(도 3b)을 생성한다(524). 하지만, 여기서 생성된 기술정보 테이블에는 모든 정보가 기록된 상태가 아니다. 따라서, UPnP-블루투스 프록시 장치에 의해 조회된 기기를 제어하는 응용프로그램이 존재하는가를 판단하여(525), 판단결과 응용 프로그램이 존재하면 UPnP 서비스 기술 테이블의 액션 필드에 액션 이름을 기입하고, 액션 테이블에 상기 액션 이름과 응용 프로그램의 활성화 위치를 기록한 후, 528 과정으로 진행한다. 만약, 응용 프로그램이 존재하지 않으면 기기 접속 해제를 UPnP 서비스 기술 테이블과 액션 테이블에 기입하고(526), 528 과정으로 진행한다.
이후, 상기 생성된 UPnP 기기 기술 테이블과 UPnP 서비스 기술 테이블에 기록된에 기록된 정보의 변경 및 수정할 내용이 있으면(528) 사용자가 정보의 변경 및 수정을 하고(529), 검색된 기기가 더 존재하는지 판단한다(530). 한편, 상기 생성된 기술 정보 테이블에 기록된 정보의 변경 및 수정할 내용이 없으면 바로 검색된 기기가 더 존재하는가를 판단한다(530). 판단결과, 검색된 기기가 더 있으면 상기 525 과정부터 반복 수행하고, 존재하지 않을 경우는 종료한다.
도 6 은 본 발명의 일실시예에 따른 UPnP-블루투스 프록시 장치에서 메세지를 처리하는 과정에 대한 상세 흐름도이다.
먼저, UPnP 제어포인트로부터 UPnP 기기 기술 테이블의 제어 위치(control url)와 이벤트 위치(event url)을 통해 서비스 액션 수행을 요구하는 제어 메세지와 UPnP 프록시 장치의 이벤트 발생을 알리는 이벤트 알림 메세지들을 수신하면(601), UPnP-블루투스 프록시 장치 내의 UPnP 메세지 처리기(24)는 수신된 메세지를 분석한다(602), 그 분석 결과에 따라 기술정보 테이블 저장부(23)의 기술정보 테이블을 검색한다(603). 검색 결과, UPnP 제어포인트 등으로부터 요청받은 서비스의 요구명과 일치하는 데이터가 기술정보 테이블 저장부에 존재하는가를 판단하여(604), 존재하면 XML 형식의 해당 UPnP 기기 기술 테이블과 UPnP 서비스 기술 테이블을 전송하고(605), 존재하지 않으면 종료한다.
상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 형태로 기록매체(씨디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다. 이러한 과정은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있으므로 더 이상 상세히 설명하지 않기로 한다.
이상에서 설명한 본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하다는 것이 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 명백할 것이다.
상기와 같은 본 발명은, 홈 네트웍상의 UPnP 제어포인트 등으로부터 빈번하게 발생하는 블루투스 기기들에 대한 서비스 정보 요청을 UPnP-블루투스 프록시 장치가 대신 처리하도록 함으로써, 블루투스 기기들은 UPnP 망과 연동하기 위한 IP, HTTP 및 XML 기술정보가 적재될 대용량의 메모리 공간이 필요 없어 그에 따른 비용을 절감할 수 있는 효과가 있다.
또한, 본 발명은, 전원 용량과 계산 능력이 부족한 블루투스 기기와 같은 소형 기기들의 전력 소비를 발생시키고 현재 수행하고 있는 작업을 방해하는 서비스 요청에 대한 접근 허용이나 응답을 하지 않기 때문에, 효율적으로 소형 기기들을 운영할 수 있는 효과가 있다.

Claims (13)

  1. 범용 플러그앤플레이(UPnP)를 지원하기 위한 프록시 장치에 있어서,
    UPnP로 제어되지 않는 기기들에 대한 정보를 검색하기 위한 기기 검색 수단;
    상기 기기 검색 수단에서 검색된 정보들을 이용하여 기술정보 테이블을 생성하기 위한 기술정보 자동생성 수단;
    상기 기술정보 자동생성 수단에서 생성된 상기 기술정보 테이블을 저장하기 위한 기술정보 테이블 저장 수단; 및
    외부의 UPnP 제어포인트에서 전송된 멀티캐스트 메세지 또는 질의 메세지 등과 같은 메세지를 전달받아 상기 기술정보 테이블 저장 수단을 검색하여 그 검색 결과를 상기 UPnP 제어포인트로 전달하기 위한 UPnP 메세지 처리 수단
    을 포함하는 범용 플러그앤플레이를 지원하기 위한 프록시 장치.
  2. 제 1 항에 있어서,
    상기 UPnP로 제어되지 않는 기기는,
    블루투스 기기인 것을 특징으로 하는 범용 플러그앤플레이를 지원하기 위한 프록시 장치.
  3. 제 1 항 또는 제 2 항에 있어서,
    상기 기술정보 테이블은,
    UPnP 기기 기술 테이블, UPnP 서비스 기술 테이블, 액션 테이블 및 상기 UPnP 기기 기술 테이블과 상기 액션 테이블을 인덱싱하기 위한 테이블을 포함하는 것을 특징으로 하는 범용 플러그앤플레이를 지원하기 위한 프록시 장치.
  4. 제 3 항에 있어서,
    상기 액션 테이블은,
    액션 이름과 상기 액션과 관련되어 실제로 수행되는 응용 프로그램의 활성화 위치 또는 프로파일의 활성화 위치를 포함하는 것을 특징으로 하는 범용 플러그앤플레이를 지원하기 위한 프록시 장치
  5. 제 3 항에 있어서,
    상기 UPnP 기기 기술 테이블과 상기 액션 테이블을 인덱싱하기 위한 테이블은,
    블루투스 기기 고유번호, 블루투스 서비스핸들, 기기 위치(URL), UPnP 기기 기술 테이블 위치, 액션 테이블 위치를 포함하는 것을 특징으로 하는 범용 플러그앤플레이를 지원하기 위한 프록시 장치.
  6. 범용 플러그앤플레이를 지원하기 위한 프록시 장치의 동작 방법에 있어서,
    기기 검색기가 UPnP로 제어되지 않는 기기들에 대한 정보를 검색하는 제 1 단계;
    기술정보 자동생성기가 상기 기기 검색기에서 검색된 정보들을 이용하여 기술정보 테이블을 생성하는 제 2 단계;
    상기 기술정보 자동생성기에서 생성된 상기 기술정보 테이블을 기술정보 테이블 저장부에 저장하는 제 3 단계; 및
    UPnP 메세지 처리기가 외부의 UPnP 제어포인트에서 전송된 멀티캐스트 메세지 또는 질의 메세지 등과 같은 메세지를 전달받아 상기 기술정보 테이블 저장부를 검색하여 그 검색 결과를 상기 UPnP 제어포인트로 전달하는 제 4 단계
    를 포함하는 범용 플러그앤플레이를 지원하기 위한 프록시 장치의 동작 방법.
  7. 제 6 항에 있어서,
    상기 기술정보 테이블은,
    UPnP 기기 기술 테이블, UPnP 서비스 기술 테이블, 액션 테이블 및 상기UPnP 기기 기술 테이블과 상기 액션 테이블을 인덱싱하기 위한 테이블을 포함하는 것을 특징으로 하는 범용 플러그앤플레이를 지원하기 위한 프록시 장치의 동작 방법.
  8. 제 7 항에 있어서,
    상기 액션 테이블은,
    액션 이름과 상기 액션과 관련되어 실제로 수행되는 응용 프로그램의 활성화 위치 또는 프로파일의 활성화 위치를 포함하는 것을 특징으로 하는 범용 플러그앤플레이를 지원하기 위한 프록시 장치의 동작 방법.
  9. 제 7 항에 있어서,
    상기 UPnP 기기 기술 테이블와 액션 테이블을 인덱싱하기 위한 테이블은,
    블루투스 기기 고유번호, 블루투스 서비스핸들, 기기 위치(URL), UPnP 기기 기술 테이블 위치, 액션 테이블 위치를 포함하는 것을 특징으로 하는 범용 플러그앤플레이를 지원하기 위한 프록시 장치의 동작 방법.
  10. 제 6 항에 있어서,
    상기 제 1 단계는,
    상기 UPnP-블루투스 프록시 장치가 초기화되었을 경우, 상기 기기 검색기가 자체 프로토콜인 SDP를 이용하여 슬레이브로 동작하는 기기들을 검색하여 새로 검색된 기기의 정보를 수집하는 것을 특징으로 하는 범용 플러그앤플레이 블루투스 프록시 장치의 동작 방법.
  11. 제 6 항에 있어서,
    상기 제 1 단계는,
    상기 UPnP-블루투스 프록시 장치가 동작 중 임의의 기기가 추가되었을 경우, 상기 기기 검색기가 자체 프로토콜인 SDP를 이용하여 슬레이브로 동작하는 추가된 기기를 검색하여 검색된 기기의 정보를 수집하는 것을 특징으로 하는 범용 플러그앤플레이 블루투스 프록시 장치의 동작 방법.
  12. 제 6 항 내지 제 11 항 중 어느 한 항에 있어서,
    상기 UPnP로 제어되지 않는 기기는,
    블루투스 기기인 것을 특징으로 하는 범용 플러그앤플레이를 지원하기 위한 프록시 장치의 동작 방법.
  13. UPnP로 제어되지 않는 기기들과 UPnP 제어포인트를 연결하기 위하여, 프로세서를 구비한 프록시 장치에,
    기기 검색기가 UPnP로 제어되지 않는 기기들에 대한 정보를 검색하는 제 1 기능;
    기술정보 자동생성기가 상기 기기 검색기에서 검색된 정보들을 이용하여 기술정보 테이블을 생성하는 제 2 기능;
    상기 기술정보 자동생성기에서 생성된 상기 기술정보 테이블을 기술정보 테이블 저장부에 저장하는 제 3 기능; 및
    UPnP 메세지 처리기가 외부의 UPnP 제어포인트에서 전송된 멀티캐스트 메세지 또는 질의 메세지 등과 같은 메세지를 전달받아 상기 기술정보 테이블 저장부를 검색하여 그 검색 결과를 상기 UPnP 제어포인트로 전달하는 제 4 기능
    을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR10-2002-0073229A 2002-11-22 2002-11-22 범용 플러그앤플레이를 지원하기 위한 프록시 장치 및 그동작방법 KR100501899B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2002-0073229A KR100501899B1 (ko) 2002-11-22 2002-11-22 범용 플러그앤플레이를 지원하기 위한 프록시 장치 및 그동작방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2002-0073229A KR100501899B1 (ko) 2002-11-22 2002-11-22 범용 플러그앤플레이를 지원하기 위한 프록시 장치 및 그동작방법

Publications (2)

Publication Number Publication Date
KR20040045185A true KR20040045185A (ko) 2004-06-01
KR100501899B1 KR100501899B1 (ko) 2005-07-25

Family

ID=37341211

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2002-0073229A KR100501899B1 (ko) 2002-11-22 2002-11-22 범용 플러그앤플레이를 지원하기 위한 프록시 장치 및 그동작방법

Country Status (1)

Country Link
KR (1) KR100501899B1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100717032B1 (ko) * 2005-09-30 2007-05-10 삼성전자주식회사 UPnP를 따르지 않는 개체를 UPnP 디바이스 또는컨텐트로 표현하는 방법 및 장치
KR100800939B1 (ko) * 2005-07-22 2008-02-04 닛산 지도우샤 가부시키가이샤 정보 단말 관리 장치, 표시 장치 및 정보 단말 관리 방법
KR101141222B1 (ko) * 2005-10-04 2012-05-04 삼성전자주식회사 블루투스 프로토콜에서 방송메시지를 이용한이웃기기리스트 작성방법
US8296395B2 (en) 2007-07-03 2012-10-23 Samsung Electronics, Ltd. Obje network device service control method and system

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100371166B1 (ko) * 2000-06-05 2003-02-06 엘지전자 주식회사 홈 네트워크 접속 장치 및 그의 제어 방법
KR100413684B1 (ko) * 2001-07-05 2003-12-31 삼성전자주식회사 서로 다른 미들웨어를 가진 디바이스들간 통신을 가능하게하는 게이트웨이, 홈네트웍시스템 및 데이터 중계방법
KR100412365B1 (ko) * 2002-02-23 2003-12-31 엘지전자 주식회사 브릿지 수단을 가지는 가전기기 네트워크 시스템과 그동작방법
KR100452362B1 (ko) * 2002-02-23 2004-10-12 엘지전자 주식회사 가전기기 네트워크 시스템
KR100442256B1 (ko) * 2002-02-28 2004-07-30 엘지전자 주식회사 홈 네트워크 시스템의 규격 호환장치 및 방법
KR100440583B1 (ko) * 2002-05-16 2004-07-19 한국전자통신연구원 외부 인터넷에 의한 댁내망의 UPnP장치 관리제어 장치및 방법

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100800939B1 (ko) * 2005-07-22 2008-02-04 닛산 지도우샤 가부시키가이샤 정보 단말 관리 장치, 표시 장치 및 정보 단말 관리 방법
KR100717032B1 (ko) * 2005-09-30 2007-05-10 삼성전자주식회사 UPnP를 따르지 않는 개체를 UPnP 디바이스 또는컨텐트로 표현하는 방법 및 장치
US7844748B2 (en) 2005-09-30 2010-11-30 Samsung Electronics Co., Ltd. Method and apparatus for presenting entity not supporting UPnP as UPnP device or content
KR101141222B1 (ko) * 2005-10-04 2012-05-04 삼성전자주식회사 블루투스 프로토콜에서 방송메시지를 이용한이웃기기리스트 작성방법
US8296395B2 (en) 2007-07-03 2012-10-23 Samsung Electronics, Ltd. Obje network device service control method and system

Also Published As

Publication number Publication date
KR100501899B1 (ko) 2005-07-25

Similar Documents

Publication Publication Date Title
US9225540B2 (en) Method and apparatus for relaying communication between universal plug and play device and remote user interface client
JP3915797B2 (ja) プラグアンドプレイ機能を有するフレームワークおよびその再構成方法
US20060031828A1 (en) Methodof apparatus for updating software of network device
EP2151095B1 (en) Method and apparatus for discovering universal plug and play device using resource information
EP2840741B1 (en) Method and apparatus for using service of home network device based on remote access
JP2004252974A (ja) ホームネットワークデバイスへの効率的なアクセスが可能な制御ポイントサーバシステム及びそのための方法
EP1500004A1 (en) Reshaped uddi for intranet use
JP2005078164A (ja) コンテンツ管理装置、コンテンツ管理システム及びコンテンツ管理プログラム
KR100493890B1 (ko) 다양한 디바이스의 지원이 가능한 사용자 인터페이스 변환시스템 및 방법
JP2005267303A (ja) 情報処理装置、ネットワークシステムおよびネットワークシステムの制御方法
JP2008059483A (ja) 通信システム及びその制御方法及び通信装置
JP4799005B2 (ja) 情報処理装置
JP5317835B2 (ja) コンテンツ属性情報提供装置、コンテンツ属性情報提供方法、及びコンピュータプログラム
KR100661856B1 (ko) 에이전트 기반의 서비스 디스커버리 시스템과 서비스디스커버리 방법 및 이를 기록한 기록매체
JP2008059578A (ja) ホームネットワークでデバイスのサービスを管理する方法及び装置
JP2003208366A (ja) 機器統合のためのネットワーク構築装置
KR100501899B1 (ko) 범용 플러그앤플레이를 지원하기 위한 프록시 장치 및 그동작방법
JP5718454B2 (ja) ホームネットワークに含まれる機器の機能を制御する方法
KR20080000310A (ko) 홈네트워크 간의 정보 공유 시스템 및 정보 공유 방법,그리고 정보 공유 생성 방법
JP5313367B2 (ja) 情報処理システム及びリモートアクセスを提供する方法
KR20100044434A (ko) 유비쿼터스 서브네트워크 연동을 위한 브로커
Pöhlsen et al. Integrating a decentralized web service discovery system into the internet infrastructure
US8296395B2 (en) Obje network device service control method and system
KR101189433B1 (ko) 홈 네트워크 시스템을 위한 객체 기반 미들웨어 시스템
KR100665436B1 (ko) 홈네트워크를 통한 파일 서버 관리 방법

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: 20100701

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee