KR100965458B1 - 유비쿼터스 서브네트워크 연동을 위한 브로커 - Google Patents

유비쿼터스 서브네트워크 연동을 위한 브로커 Download PDF

Info

Publication number
KR100965458B1
KR100965458B1 KR1020080103568A KR20080103568A KR100965458B1 KR 100965458 B1 KR100965458 B1 KR 100965458B1 KR 1020080103568 A KR1020080103568 A KR 1020080103568A KR 20080103568 A KR20080103568 A KR 20080103568A KR 100965458 B1 KR100965458 B1 KR 100965458B1
Authority
KR
South Korea
Prior art keywords
service
subnetwork
universal
broker
information
Prior art date
Application number
KR1020080103568A
Other languages
English (en)
Other versions
KR20100044434A (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 KR1020080103568A priority Critical patent/KR100965458B1/ko
Publication of KR20100044434A publication Critical patent/KR20100044434A/ko
Application granted granted Critical
Publication of KR100965458B1 publication Critical patent/KR100965458B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/02Calling substations, e.g. by ringing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/20Automatic or semi-automatic exchanges with means for interrupting existing connections; with means for breaking-in on conversations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

본 발명은 이질적인 서브네트워크를 유니버설 네트워크 (Universal Networks)로 하여 이 기종 서브네트워크 환경과 다양한 컴퓨팅 환경이 융합된 환경에서 웹서비스를 연계·이용할 수 있도록 하는 유비쿼터스 서브네트워크 연동을 위한 브로커에 관한 것이다.
본 발명은, 리스너, 어댑터, 등록 에이전트, 유니버설 서비스 레지스트리, 질의 에이전트 및 라우팅 프록시를 포함하는 유니버설 서비스 브로커를 제공한다.
유비쿼터스, 서브네트워크, 디바이스, 서비스, 유니버설 네트워크, WSUN, 브로커

Description

유비쿼터스 서브네트워크 연동을 위한 브로커{Universal Service broker for interoperability between sub-networks}
본 발명은 이질적인 서브네트워크를 유니버설 네트워크 (Universal Networks)로 하여 이 기종 서브네트워크 환경과 다양한 컴퓨팅 환경이 융합된 환경에서 웹서비스를 중간 매개체로 하는 유비쿼터스 서브네트워크 연동을 위한 브로커에 관한 것이다.
유비쿼터스 웹서비스 (Ubiquitous Web Services)는 어떠한 단말이나 네트워크 환경에서도 다양한 응용 서비스를 연계하여 이용할 수 있도록 하는 미래형 웹서비스 기술로 정의될 수 있다. 유비쿼터스 웹서비스는 계속 동적으로 변하는 디바이스 및 서비스에 대한 능동적인 서비스의 검색과 이용이 요구되고, ad-hoc한 환경에서의 검색 방법 등을 지원해야 한다. 이에 따라 트랜잭션, 보안, QoS, 시멘틱과 웹서비스 조합 등 여러 분야로 연구되고 있다.
최근 유비쿼터스 웹서비스를 지원하기 위한 기술로 BEA, 마이크로소프트, 썬 마이크로시스템즈 등에서 WS-Eventing을 개발, OASIS에서 WS-Base Notification의 표준 개발, IBM, Sonic 등에서 WS-Brokered Notification의 표준 개발 등이 있다. 마이크로소프트에서는 모바일 웹서비스 (Mobile Web Services)와 디바이스를 위한 웹서비스 (Web Services on Devices) 기술, 유비쿼터스 환경을 위한 Invisible 웹서비스 플랫폼을 개발 및 표준 개발을 더욱 적극적으로 추진하고 있으며, IBM은 유비쿼터스 기술 분야에서의 장점을 활용하여 웹서비스 기술 개발 전략을 추진하고 있다. 국내에서는 IT839 서비스의 융복합을 위해 소프트 인프라웨어 (Soft Infraware)로서 웹서비스를 적극적으로 활용할 계획 중이며, 시멘틱 검색 및 서비스 매치메이킹 (Match Making) 등의 기술은 대학 및 연구소를 중심으로 연구가 진행되고 있다. 그러나 국·내외적으로 유비쿼터스 웹서비스 연구는 초기 상태로 아직까지 다양한 요구 사항을 충분히 반영하지 못하고 있는 실정이다.
앞서 살펴본 바와 같이, 서로 다른 프로토콜 및 플랫폼에 기반을 둔 디바이스와 서비스의 위치, 상태, 정보 등의 유동성에서 생기는 문제는 서비스 디스커버리 미들웨어 (Service Discovery Middleware)를 통해 해결할 수 있다. 이하 서비스 디스커버리 미들웨어를 서브네트워크 (Sub-network)로 지칭한다. 대표적인 서브네트워크로는 썬 마이크로시스템즈의 Jini (Java Intelligent Network Infra-structure), 마이크로소프트의 UPnP (Universal Plug and Play)와 HAVi (Home Audio/Video Interoperability) 등이 있으며, 디바이스간의 통합을 위한 연구로는 DPWS (Devices Profile for Web Services) 가 있다. 하지만 하나의 서브네트워크가 서로간의 상호운용성을 지원해주지 못할 뿐만 아니라 다양한 물리 계층에 대한 이 질적인 특성을 모두 반영할 수 없다. 다양한 서브네트워크가 존재하는 반면에 산재한 서브네트워크의 이질성을 극복하는 방안은 아직 미흡한 실정이다.
이질적인 서브네트워크의 상호운용성을 위한 기존의 연구에 대해 살펴본다.
표 1은 서브네트워크간의 통합을 위한 연구와 디바이스간의 통합을 위한 연구 및 서브네트워크의 특징을 나타낸다.
Figure 112008073297819-pat00001
가장 대표적인 서브네트워크인 Jini와 UPnP는 이질적인 특성을 가장 잘 반영하기 때문에 OSGi (Open Service Gateway Initiative)와 DomoNet (Domotics Network) 등에서 사용한다. OSGi는 서비스 게이트웨이로 서비스를 로컬 네트워크나 디바이스에 전달하고 전달된 서비스를 운용하는 개방적 표준을 제공한다. DomoNet은 서브네트워크의 서비스를 웹서비스로 변환하여 이질적인 서브네트워크의 상호운용성을 보장한다. 이러한 서브네트워크의 통합을 위한 연구들에서 사용하는 Jini는 자바 기반으로 자바 가상 머신 (Java Virtual Machine)이 필요한 단점이 있지만 플러그 앤 플레이와 보안 등 여러 특성을 포함하고 있다. 반면에 UPnP는 프로그래밍 언어에 독립적이지만 광대역의 네트워크 환경을 지원하지 못하며 보안에 취약한 문제를 지니고 있다. 이질적인 환경의 상호운용성을 제공하기 위한 웹서비스는 다수의 특징을 지원하지만 플러그 앤 플레이를 지원하지 못하기 때문에 동적인 서비스 검색이 불가능하다. 또한, 디바이스 관점의 웹서비스를 제공하지 못하기 때문에 유비쿼터스 환경에서 제대로 적용할 수 없다. 웹서비스가 가지는 문제점을 해결하기 위한 일환으로 DPWS가 있으며 디바이스 관점의 웹서비스를 지원하여 유비쿼터스 환경의 특징을 반영한 UPnP의 차세대 기술로 각광받고 있다.
OSGi를 확장한 연구로서 이질적인 서브네트워크의 통합을 OSGi를 이용하여 서비스 프레임워크를 제공한다. 이는 OSGi가 가지는 서비스 게이트웨이와 분산 미들웨어의 장점을 혼합한 형태로 나타난다.
도 1은 OSGi를 확장한 구조를 나타낸 블록도로서, 컨트롤서비스 (Control Services)를 통한 디바이스 연동을 위한 OSGi의 확장구조를 보여준다. 이러한 구조에서는, OSGi 레지스트리와 디바이스 위치기, 디바이스 선택기로 구성된 OSGi 디바이스 매니저 등을 통해 서브네트워크와 연결을 한다.
OSGi의 게이트웨이가 가지는 특징을 이용하기 위해 서브네트워크마다 컨트롤 서비스를 생성하여 OSGi의 게이트웨이와 연결하는 인터페이스를 제공한다. 또한, 이벤트에 대한 처리를 담당하여 OSGi의 프레임워크에서 처리하지 못하는 메시지를 변환하여 전달한다.
이러한 OSGi의 게이트웨이가 가지는 특성을 살펴보면 다음과 같다.
▶ 애플리케이션 서비스 : 모든 애플리케이션에 적용 가능한 서비스를 제공한다.
▶ 이식 가능한 애플리케이션 : 프레임워크가 애플리케이션 자체로 이식 가능한 코드와 구성 파일들을 포함한다. 즉, 애플리케이션과 라이브러리의 구성 요소들을 프레임워크가 관리한다.
▶ 애플리케이션 관리 : 프레임워크는 설치, 시작, 중지, 변경, 삭제의 과정을 어떤 애플리케이션이나 프로그램으로 동작한다.
▶ 인터페이스 서비스 : 코드의 재사용을 위한 애플리케이션 간의 상호운용을 위해 애플리케이션을 모듈화 한다.
▶ 안전성 증대 : 에러나 시스템 결점을 발견하여 이에 대한 해결을 한다.
한편, DomoNet는 서브네트워크의 서비스를 웹서비스로 변환하여 이질적인 서브네트워크의 상호운용성을 보장하기 위해 SOA 기반으로 접근하고 있다. 이를 위해, 하나의 서비스를 웹서비스로 변환하는 기능을 담당하는 TM (TechManager)가 존재한다. TM은 도 2에 나타낸 바와 같이 각 서브네트워크마다 위치하여 모든 서비스에 대해 변환하는 과정을 서브네트워크에 종속적으로 동작하기 때문에 효율적으로 사용된다. DomoNet 네트워크와 서브네트워크의 연결을 담당하는 TM은 서브네트워크에서 제공하는 서비스들을 DomoNet 환경에서 사용 가능하도록 하기 위해 서브네트워크의 상태에 따라 웹서비스로 변환하는 동작을 한다.
본 발명에서는 이 기종 서브네트워크 환경과 다양한 컴퓨팅 환경이 융합된 환경에서 웹서비스를 중간 매개체로 하여 사용자가 WSUN을 통해 이 기종 서브네트워크 서비스를 쉽게 발견하고 사용할 수 있도록 한 유비쿼터스 서브네트워크 연동을 위한 브로커를 제공하는데 그 목적이 있다.
상기 목적을 달성하기 위한 본 발명은, 이질적인 서브네트워크로 구성된 WSUN(Web Services on Universal Networks)에서 디바이스의 사용자에게 유니버설 서비스의 검색 및 이용을 지원하기 위해, 리스너, 어댑터, 등록 에이전트, 유니버설 서비스 레지스트리, 질의 에이전트 및 라우팅 프록시를 포함하는 유니버설 서비스 브로커(US Broker)에 관한 것이다.
본 발명에서, (A) 상기 리스너는, 네트워크에 등장하는 WSUN 디바이스 또는 사용자단말이 US 브로커와 통신을 할 수 있도록 주소, 호스트 정보를 포함하는 US 브로커의 기본 정보를 상기 디바이스 또는 사용자단말에게 제공하며; (B) 상기 어댑터는, 네트워크에 존재하는 디바이스들의 메타데이터 정보를 수집하여 등록 에이전트에 전달하고, 서브네트워크의 서비스를 가상 웹서비스로 변환하며; (C) 상기 등록 에이전트는, 상기 어댑터로부터 전달받은 디바이스들의 메타데이터 정보를 상기 유니버설 서비스 레지스트리와 UDDI 레지스트리에 저장하며; (D) 상기 질의 에 이전트는, 사용자단말로부터의 서비스 검색 질의에 대해, 1차적으로 UDDI 레지스트리를 검색하고, 2차적으로 유니버설 서비스 레지스트리로부터 서비스가능한 디바이스들에 대한 메타데이터와 위치 정보를 검색하여 사용자단말에게 통지하며; (E) 상기 라우팅 프록시는, 사용자단말로부터 가상 웹서비스로의 연결요청이 있을 때 상기 가상 웹서비스의 실제 서비스인 서브네트워크 서비스를 연결시켜주는; 기능과 역할을 한다.
본 발명에서 상기 어댑터는, 서브네트워크와 US 브로커 사이의 중계 역할을 담당하는 유니버설 어댑터로서, 구현된 어댑터로는 Jini 기반의 서브네트워크 디바이스를 위한 Jini 어댑터, DPWS 기반의 서브네트워크 디바이스를 위한 DPWS 어댑터로 구성되는 것이 바람직하다.
이때 상기 유니버설 어댑터는, (A) 서브네트워크와 US 브로커 사이에서 필요한 정보전달을 매개하는 메시지 전송기능; (B) 서브네트워크의 서비스를 검색하고 필요한 메타정보를 수집하는 서브네트워크 서비스 검색기능; (C) 서브네트워크의 서비스를 가상 웹서비스 형태로 변환하는 가상 웹서비스 생성기능; (D) 서브네트워크 및 서브네트워크의 디바이스의 등장과 퇴장, 서비스의 사용을 종료에 대한 서비스의 상태 정보를 변경하는 이벤트 및 알림기능; (E) 서브네트워크내 사용자에게 UDDI 레지스트리에 등록된 웹서비스와의 연동 기능; 을 포함하도록 하는 것이 바람직하다.
본 발명에서 상기 유니버설 서비스 레지스트리는, (A) 각 서브네트워크의 디바이스 및 서비스의 명세 정보와 WSUN 디바이스의 명세 정보를 저장하는 디바이스/서비스 레지스트리; 및 (B) 각 서브네트워크의 디바이스 및 서비스의 동적정보를 저장하는 컨텍스트 레지스트리;로 구분되는 것이 좋다.
본 발명에 의해, 이질적인 서브네트워크를 유니버설 네트워크 (Universal Networks)로 하여 이 기종 서브네트워크 환경과 다양한 컴퓨팅 환경이 융합된 환경에서 웹서비스를 이용하여 서브네트워크 간의 상호운용이 가능하게 된다.
또한 본 발명에 따르면, 이질적 서브네트워크상의 디바이스와 서비스의 위치 및 상태 정보를 반영한 다양한 서비스 발견이 가능하게 되므로, 사용자에게 필요한 서비스의 검색 및 이용이 효율적으로 제공될 수 있다.
본 발명은, 유비쿼터스 환경의 변화에 대한 적절한 대응 및 전략적 비전을 제시하며, 유비쿼터스 웹서비스를 통해 경쟁력 있는 시스템 개발 및 서비스의 재사용과 웹서비스 응용 서비스의 제공을 기대할 수 있다.
이하 첨부된 도면을 참조하여 본 발명을 보다 상세히 설명한다. 그러나 이러한 도면은 본 발명의 기술적 사상의 내용과 범위를 쉽게 설명하기 위한 예시일 뿐, 이에 의해 본 발명의 기술적 범위가 한정되거나 변경되는 것은 아니다. 또한 이러한 예시에 기초하여 본 발명의 기술적 사상의 범위 안에서 다양한 변형과 변경이 가능함은 당업자에게는 당연할 것이다.
도 6은 본 발명에 의한 US 브로커 구조를 보여주는 개념도이다. 여기서 US 브로커는 저장 단계(Register Layer), 관리 단계(Management Layer), 전송 단계(Transfer Layer), 바인딩 단계(Binding Layer)로 구분되며, 저장 단계에는 유니버설 서비스 레지스트리가, 관리 단계에는 질의 에이전트와 등록 에이전트가, 전송 단계에는 리스너와 어댑터가, 바인딩 단계에는 라우팅 프록시가 해당된다. 이들의 기능은 다음과 같다.
(A) 리스너 (Listener) : WSUN 디바이스와 사용자단말이 WSUN에 등장하였을 때, US 브로커와 통신을 하기 위한 US 브로커의 기본 정보를 제공한다. 예를 들어, US 브로커의 주소, 호스트 등의 정보가 되며 WSUN 디바이스의 등록이나 사용자단말이 서비스를 검색, 발견할 수 있도록 환경을 만들어 주어야 한다.
(B) 어댑터 : 서브네트워크와 US 브로커 사이의 중계 역할을 담당하는 유니버설 어댑터로서, 구현된 어댑터로는 Jini 기반의 서브네트워크 디바이스를 위한 Jini 어댑터, DPWS 기반의 서브네트워크 디바이스를 위한 DPWS 어댑터로 구성되는 것이 바람직하다.
유니버설 어댑터는, 서브네트워크와 US 브로커 사이의 중계 역할을 담당한다. 이질적인 서브네트워크와 US 브로커가 통신을 하기 위한 브리지 역할로 서브네트워크의 서비스를 가상 웹서비스로 변환하여 유니버설 서비스를 검색을 지원한다. 도 7은 유니버설 어댑터의 기능에 대한 예를 보여주는 블록도이다. 상기 유니버설 어댑터는 다음과 같은 기능을 갖는다.
메시지 전송 (Message Transfer) : 서브네트워크와 US 브로커에 필요한 정보들은 전송하는 기능을 담당한다. 이는 US 브로커와 서브네트워크의 통신 프로토콜 등이 이질적이기 때문에 유니버설 어댑터를 통해 중재된다.
서브네트워크 서비스의 검색 (Sub-network Services Discovery) : 서브네트워크의 서비스를 가상 웹서비스로 변환하고 유니버설 서비스 레지스트리에 저장할 정보들을 검색한다. 검색한 정보들은 가상 웹서비스 생성 후 등록 에이전트로 보내 유니버설 서비스 레지스트리에 저장한다.
가상 웹서비스 생성 (Virtual Web Services Creation) : 사용자단말은 서브네트워크의 존재를 인식하지 않고 서비스를 검색하고 사용하기 때문에 서브네트워크의 서비스를 웹서비스 형태로 변환한다. 변환된 서비스가 외부에 가상 웹서비스로 사용자단말에게 노출된다. 이를 통해, 사용자단말은 웹서비스를 사용하는 것으로 보이지만 실제로 유니버설 어댑터를 통해 서브네트워크의 서비스가 제공된다
이벤트 및 알림 (Events and Notifications) : 서브네트워크 및 서브네트워크의 디바이스의 등장과 퇴장이 발생하였을 경우 이를 반영하여 플러그 앤 플레이를 지원한다. 또한, 사용자단말이 서비스의 사용을 종료하였을 경우, 서비스의 상태 정보를 변경하여 서비스가 사용 가능하도록 한다.
웹서비스와의 연동(Interoperability with Web Services) : 서브네트워크내 사용자에게 UDDI 레지스트리에 등록된 서비스 목록을 제공해 주고, 사용자가 웹 서비스 사용을 요구할 시 바로 사용할 수 있도록 연결해 주는 역할을 담당한다.
(C) 등록 에이전트 (Publish Agent) : WSUN의 환경에 필요한 메타데이터 정보를 유니버설 서비스 레지스트리와 UDDI 레지스트리에 등록한다. WSUN 디바이스나 서브네트워크에 존재하는 메타데이터 정보가 유니버설 어댑터에 의해 수집되면 유니버설 서비스 레지스트리의 디바이스/서비스 레지스트리와 컨텍스트 레지스트리에 각각 저장하는 기능을 한다.
(D) 질의 에이전트 (Query Agent) : 사용자단말의 서비스 검색 질의를 처리한다. 질의 에이전트는 사용자단말의 서비스 검색 질의를 받게 되면 유니버설 서비스 레지스트리의 디바이스/서비스 레지스트리의 메타데이터와 컨텍스트 레지스트리의 서비스의 위치 정보를 검색하여 사용자단말에게 알려준다.
(E) 라우팅 프록시 (Routing Proxy) : 사용자단말이 서비스 검색 결과에서 원하는 서비스를 연결을 US 브로커에 요청할 경우 라우팅 프록시는 가상 웹서비스의 실제 서비스인 서브네트워크 서비스를 연결시켜주는 기능을 담당한다.
(F) 본 발명에서 상기 유니버설 서비스 레지스트리 (US Registry)는 디바이스/서비스 레지스트리와 컨텍스트 레지스트리로 구성되는 것이 좋다.
디바이스/서비스 레지스트리 (Device/Service Registry) : WSUN의 환경에서 사용되는 메타데이터 즉, 각 서브네트워크의 디바이스 및 서비스의 명세 정보와 WSUN 디바이스의 명세 정보를 저장한다. 이를 통해, US 브로커는 사용자단말의 서비스 검색 질의가 오면 서브네트워크에 존재하는 디바이스 및 서비스를 검색하지 않아도 서비스 검색이 가능할 뿐만 아니라 서비스 상태 정보도 포함하고 있기 때문 에 동적인 서비스 검색이 가능하다. 디바이스/서비스 레지스트리에는 서브네트워크의 디바이스와 서비스 정보 중 공통되고, 정적이며, 필수적인 요소만 저장한다. 이러한 요소만을 추출하기 위해서 Jini UPnP, DPWS로 범위를 한정하여 하기 표 2와 같은 디바이스 및 서비스 정보를 추출하는 것이 바람직하다.
Figure 112008073297819-pat00002
유니버설 서비스 레지스트리가 존재하지 않으면 서비스의 검색 질의가 오면 모든 서브네트워크나 WSUN 디바이스에 검색을 하는 중개자 (Mediator) 방식을 이용해야 한다. 이는 각 서브네트워크와 WSUN 디바이스가 제공하는 서비스를 관리하는 모듈이 필요 없기 때문에 동적인 서비스 검색이 가능한 장점이 있지만, 서비스의 상태 정보를 포함할 수 없으며 검색 시간이 증가하는 문제점이 있다.
반면에 서브네트워크나 WSUN 디바이스의 모든 메타데이터 정보를 레지스트리에 저장하고 관리하는 데이터 웨어하우스 (Data warehouse) 방식이 있다. 중개자 방식에서 생기는 서비스 검색 시간의 증가를 해결할 수 있지만 모든 메타데이터 정보를 레지스트리에 등록, 삭제 또는 수정 과정에 대한 부담이 가중된다. 그리하여 유니버설 서비스 레지스트리의 디바이스/서비스 레지스트리는 각 서브네트워크의 디바이스 및 서비스의 명세 정보 중 공통적이고 정적이며 필수적인 요소만을 추출하여 관리하는 하이브리드 (Hybrid) 방식을 취할 수 있다.
컨텍스트 레지스트리 (Context Registry) : 유비쿼터스 환경에서는 디바이스의 위치가 자주 변하기 때문에 컨텍스트 레지스트리는 디바이스의 위치 정보를 저장하여 사용자단말의 위치 정보에 맞는 서비스를 검색하도록 상황 정보로 쓰인다. 예를 들어, 회의 장소 내에서 사용 가능한 프린터를 검색하는 것을 들 수 있다. 이는 추후 사용자단말의 프로파일 등의 온톨로지 검색으로 확장할 것이다.
한편, 본 발명에 의한 US 브로커는 서브네트워크의 서비스를 가상 웹서비스로 변환하여 사용자단말에게 제공하기 때문에 US 브로커에 적절한 웹서비스 프로토콜 스택을 따른다.
도 5는 US 브로커의 프로토콜 스택으로 USDP, WS-Eventing, WS-Addressing, SOAP (Simple Object Access Protocol), WSDL (Web Services Description Language), XML Schema로 구성된다. ① WSDL는 서비스의 인터페이스와 연결을 위한 전송 프로토콜의 명세 정보를 포함하며 ② XML Schema는 서비스를 사용하기 위한 송수신 메시지의 데이터 형식을 정의하고 ③ SOAP은 WSDL에 정의된 메시지 형식의 전송 프로토콜로 웹서비스를 위한 다양한 웹서비스 프로토콜을 통합할 수 있도록 한다. 현재는 SOAP을 이용하지만 유비쿼터스의 경량화된 환경에 맞도록 SOAP을 변형하여 simple SOAP인 gSOAP [18]으로 확장한다. ④ WS-Addressing은 SOAP과 밀접한 관련을 가지고 있다. 송수신 되는 모든 메시지의SOAP의 헤더 부분에 주소 정보를 포함하고 있다. 이를 통해, HTTP, SMTP, TCP와 UDP 등 어떤 전송 프로토콜이라도 메시지를 전송할 수 있다. ⑤ USDP는 서비스를 검색하기 위한 프로토콜로 플러그 앤 플레이 및 네트워크에 연결된 ad-hoc 환경에서의 검색을 제공한다. WSUN 디바이스의 등장 및 퇴장에 대한 처리와 함께 US 브로커를 통한 유니버설 서비스 검색이 가능하도록 한다. ⑥ WS-Eventing은 서비스의 위치나 상태 정보 등의 유동성에서 생기는 이벤트를 처리하기 위한 프로토콜이다. 예를 들어, 사용자단말이 서비스의 사용이 종료되었을 경우도 서비스의 상태 정보가 변하게 되는 것이므로 WS-Eventing을 통해 US 브로커에 전달하게 된다.
이상과 같은 구조와 기능을 가지는 US 브로커는 다음과 같은 작업을 하게 된다.
(A) 서비스 검색 : US 브로커의 레지스트리에 서브네트워크의 디바이스 및 서비스 메타 정보를 저장하여 동적인 서비스 검색이 이루어지도록 한다. 이를 위해, JINI, UPnP, DPWS 등 각 서브네트워크에 존재하는 디바이스 및 서비스를 검색하는 기능을 담당한다.
(B) 서비스 등록 및 관리 : 각 서브네트워크의 디바이스 및 서비스 정보를 검색한 후 유니버설 서비스 레지스트리의 디바이스/서비스 레지스트리와 컨텍스트 레지스트리에 등록하고 서비스의 사용 가능 여부에 따라 관리를 한다.
(C) 서비스 연결 : 사용자단말의 서비스 검색 후 원하는 서비스를 사용할 수 있도록 연결을 담당한다. 사용자단말은 가상 웹서비스를 사용하는 것으로 인식하기 때문에 실제로 사용하게 될 서브네트워크의 서비스를 사용하도록 지원한다.
(D) 가상 웹서비스 생성 : 서브네트워크의 서비스는 US 브로커를 통해 가상 웹서비스로 사용자단말에게 제공된다. 사용자단말은 웹서비스를 사용하는 것으로만 인식하도록 하여 사용자단말 및 서브네트워크의 환경에 제약을 받지 않고 서비스를 사용할 수 있다.
(E) 서비스의 이벤트 처리 : 동적인 서비스 검색 및 사용을 위해 사용 가능한 서비스만 제공하도록 해야 한다. 디바이스의 위치나 사용자단말의 서비스 사용이 종료될 경우 서비스의 상태에 변화가 생기므로 이에 따른 정보를 반영한다.
본 발명에 의한 US 브로커가 이용된 WSUN(Web Services on Universal Networks)의 구조를 보여주는 블록도를 도 3에 예시적으로 도시하였다. 유니버설 네트워크 기반 웹서비스를 위한 시스템 구성은 US 브로커, 유니버설 서비스 레지스트리, 유니버설 어댑터가 구비된다.
이러한 구성을 통해 WSUN은 사용자단말에게 각 서브 네트워크의 서비스를 가상 웹서비스로 변환한 유니버설 서비스를 제공한다. 각 서브 네트워크의 서비스를 가상 웹서비스를 통해 제공하기 때문에 사용자단말은 어떠한 서비스라도 웹서비스를 사용하는 것과 같이 검색 및 사용이 가능하다.
상기 US 브로커는 WSUN의 주요 구성요소로서 이질적이고 산재한 서브네트워크의 상호운용성을 지원하는 미들웨어로서의 기능과 역할을 하게 된다. US 브로커는 서비스 사용자단말과 서비스 제공자 사이에 위치해서 서브네트워크의 서비스와 WSUN 디바이스가 제공하는 서비스를 검색하고 사용할 수 있다.
US 브로커는 서비스 발견, 등록 및 관리하는 과정에서 다음과 같은 기능을 하게 된다.
(A) 사용자단말 등장시 : 사용자단말이 WSUN의 환경에서 서비스를 검색하거나 사용할 수 있도록 하기 위해 US 브로커와 통신을 지원해야 한다. 즉, US 브로커는 서비스를 검색하는 방법을 사용자단말에게 제공해야 한다. 이 과정에서 사용자단말은 US 브로커를 사용하기 위해 별도의 환경을 구축하지 않아도 된다. 도 4는 사용자단말(Client)이 등장하여 US 브로커를 발견하고, US 브로커와 통신하는 과정을 나타낸다.
(B) 서브네트워크의 등장 및 퇴장시 : JINI나 UPnP와 같은 서브네트워크가 WSUN에 등장하거나 퇴장하였을 경우 디바이스 및 서비스 정보를 US 브로커에 반영해야 한다. US 브로커의 유니버설 서비스 레지스트리에 서브네트워크의 디바이스 및 서비스 메타정보를 저장하여 동적인 서비스 검색이 가능하도록 한다. 단, DPWS와 같은 P2P를 지원하는 서브네트워크는 서브네트워크 단위로 WSUN에 등장하거나 퇴장하는 경우는 없다.
(C) 서브네트워크의 디바이스 등장 및 퇴장시 : 서브네트워크의 디바이스의 위치는 유동적이다. 디바이스의 등장 및 퇴장에 따라 디바이스에서 제공하는 서비스의 상태가 종속적이기 때문에 이에 대한 상황을 감지하고 적절한 해결 방안을 제시할 수 있어야 한다. 즉, US 브로커는 사용자단말에게 사용 가능한 서비스만 검색할 수 있도록 제공할 수 있어야 한다.
(E) WSUN 디바이스 등장 및 퇴장시 : WSUN 디바이스는 WSUN의 환경을 지원하는 디바이스로서, US 브로커가 WSUN 디바이스의 등장 및 퇴장에 대한 지원이 가능해야 한다.
(F) 사용자단말의 서비스 검색 및 연결시 : 사용자단말이 서비스 검색 질의를 US 브로커에 요청하면 그에 대한 검색 결과를 알려주고, 검색한 서비스 중 사용자단말이 원하는 서비스를 사용할 수 있도록 연결해야 한다.
도 1은 OSGi를 확장한 구조를 나타낸 블록도.
도 2는 DomoNet 시스템의 개념을 보여주는 블록도.
도 3은 본 발명에 의한 US 브로커가 이용된 WSUN(Web Services on Universal Networks)의 구조를 보여주는 블록도.
도 4는 사용자단말이 등장하여 US 브로커를 발견하고, US 브로커와 통신하는 과정을 보여주는 흐름도.
도 5는 US 브로커의 프로토콜 스택을 보여주는 블록도.
도 6은 본 발명에 의한 US 브로커 구조를 보여주는 개념도.
도 7은 본 발명에 의한 US 브로커에 적용될 수 있는 유니버설 어댑터의 기능적 구조를 예시적으로 보여주는 블록도.

Claims (4)

  1. 이질적인 서브네트워크로 구성된 WSUN(Web Services on Universal Networks)에서 디바이스의 사용자에게 유니버설 서비스의 검색 및 이용을 지원하기 위해,
    리스너, 어댑터, 등록 에이전트, 유니버설 서비스 레지스트리, 질의 에이전트 및 라우팅 프록시를 포함하는 유니버설 서비스 브로커(US Broker)로서,
    (A) 상기 리스너는, 네트워크에 등장하는 WSUN 디바이스 또는 사용자단말이 US 브로커와 통신을 할 수 있도록 주소, 호스트 정보를 포함하는 US 브로커의 기본 정보를 상기 디바이스 또는 사용자단말에게 제공하며;
    (B) 상기 어댑터는, 네트워크에 존재하는 디바이스들의 메타데이터 정보를 수집하여 등록 에이전트에 전달하고, 서브네트워크의 서비스를 가상 웹서비스로 변환하고, 서브네트워크 내 사용자에게 웹서비스를 제공하며;
    (C) 상기 등록 에이전트는, 상기 어댑터로부터 전달받은 디바이스들의 메타데이터 정보를 상기 유니버설 서비스 레지스트리 및 UDDI 레지스트리에 저장하며;
    (D) 상기 질의 에이전트는, 사용자단말로부터의 서비스 검색 질의에 대해, UDDI 레지스트리와 유니버설 서비스 레지스트리로부터 서비스 가능한 디바이스들에 대한 메타데이터와 위치 정보를 검색하여 사용자단말에게 통지하며;
    (E) 상기 라우팅 프록시는, 사용자단말로부터 가상 웹서비스로의 연결요청이 있을 때 상기 가상 웹서비스의 실제 서비스인 서브네트워크 서비스를 연결시켜주는;
    것을 특징으로 하는 유니버설 서비스 브로커.
  2. 제 1 항에 있어서,
    상기 어댑터는,
    서브네트워크와 US 브로커 사이의 중계 역할을 담당하는 유니버설 어댑터로서, 구현된 어댑터로는 Jini 기반의 서브네트워크 디바이스를 위한 Jini 어댑터, DPWS 기반의 서브네트워크 디바이스를 위한 DPWS 어댑터를 구성으로하는 유니버설 서비스 브로커.
  3. 제 2 항에 있어서,
    상기 유니버설 어댑터는,
    (A) 서브네트워크와 US 브로커 사이에서 필요한 정보전달을 매개하는 메시지 전송기능;
    (B) 서브네트워크의 서비스를 검색하고 필요한 메타정보를 수집하는 서브네트워크 서비스 검색기능;
    (C) 서브네트워크의 서비스를 가상 웹서비스 형태로 변환하는 가상 웹서비스 생성기능;
    (D) 서브네트워크 및 서브네트워크의 디바이스의 등장과 퇴장, 서비스의 사 용을 종료에 대한 서비스의 상태 정보를 변경하는 이벤트 및 알림기능;
    (E) 서브네트워크 내 사용자에게 웹서비스를 제공하는 웹서비스 연동 기능;
    을 포함하는 것을 특징으로 하는 유니버설 서비스 브로커.
  4. 제 1 항 또는 제 2 항에 있어서,
    상기 유니버설 서비스 레지스트리는,
    (A) 각 서브네트워크의 디바이스 및 서비스의 명세 정보와 WSUN 디바이스의 명세 정보를 저장하는 디바이스/서비스 레지스트리; 및
    (B) 각 서브네트워크의 디바이스 및 서비스의 동적정보를 저장하는 컨텍스트 레지스트리;
    를 포함하는 것을 특징으로 하는 유니버설 서비스 브로커.
KR1020080103568A 2008-10-22 2008-10-22 유비쿼터스 서브네트워크 연동을 위한 브로커 KR100965458B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080103568A KR100965458B1 (ko) 2008-10-22 2008-10-22 유비쿼터스 서브네트워크 연동을 위한 브로커

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080103568A KR100965458B1 (ko) 2008-10-22 2008-10-22 유비쿼터스 서브네트워크 연동을 위한 브로커

Publications (2)

Publication Number Publication Date
KR20100044434A KR20100044434A (ko) 2010-04-30
KR100965458B1 true KR100965458B1 (ko) 2010-06-24

Family

ID=42219133

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080103568A KR100965458B1 (ko) 2008-10-22 2008-10-22 유비쿼터스 서브네트워크 연동을 위한 브로커

Country Status (1)

Country Link
KR (1) KR100965458B1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101636825B1 (ko) * 2009-11-25 2016-07-08 에스케이플래닛 주식회사 멀티 주소록을 이용한 선택적 착신 전환 서비스 시스템 및 선택적 착신 전환 서비스 방법
CN102427451B (zh) * 2011-12-06 2014-10-22 宁波电业局 一种获取服务应用的方法与***
KR102148068B1 (ko) * 2017-11-29 2020-08-25 전자부품연구원 다중 IoT 상호 연동 처리 시스템 및 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060069170A (ko) * 2004-12-17 2006-06-21 한국전자통신연구원 이종의 홈네트워크 미들웨어상에 접속해 있는 홈디바이스들간의 상호 연동을 위한 홈네트워크 범용미들웨어 브릿지 시스템 및 그 방법
KR100661856B1 (ko) 2005-12-20 2006-12-28 성균관대학교산학협력단 에이전트 기반의 서비스 디스커버리 시스템과 서비스디스커버리 방법 및 이를 기록한 기록매체

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060069170A (ko) * 2004-12-17 2006-06-21 한국전자통신연구원 이종의 홈네트워크 미들웨어상에 접속해 있는 홈디바이스들간의 상호 연동을 위한 홈네트워크 범용미들웨어 브릿지 시스템 및 그 방법
KR100661856B1 (ko) 2005-12-20 2006-12-28 성균관대학교산학협력단 에이전트 기반의 서비스 디스커버리 시스템과 서비스디스커버리 방법 및 이를 기록한 기록매체

Also Published As

Publication number Publication date
KR20100044434A (ko) 2010-04-30

Similar Documents

Publication Publication Date Title
US8423671B2 (en) Middleware device and method of supporting compatibility of devices in home network
Grace et al. ReMMoC: A reflective middleware to support mobile client interoperability
US7085814B1 (en) Data driven remote device control model with general programming interface-to-network messaging adapter
Zeeb et al. Service-oriented architectures for embedded systems using devices profile for web services
US7602756B2 (en) Dynamic self-configuration for ad hoc peer networking
US7325057B2 (en) Apparatus and method for managing and controlling UPnP devices in home network over external internet network
US20040139180A1 (en) Automobile media synchronization
EP2151095B1 (en) Method and apparatus for discovering universal plug and play device using resource information
KR101037941B1 (ko) 홈 네트워크 장치를 이용한 홈 간 컨텐츠 공유 장치 및방법
Raverdy et al. A multi-protocol approach to service discovery and access in pervasive environments
EP2005653A2 (en) Remote access
KR100901281B1 (ko) 유비쿼터스 웹서비스 방법
US20090287794A1 (en) Assisting media servers in determining media profiles
JP4799005B2 (ja) 情報処理装置
JP5317835B2 (ja) コンテンツ属性情報提供装置、コンテンツ属性情報提供方法、及びコンピュータプログラム
KR100965458B1 (ko) 유비쿼터스 서브네트워크 연동을 위한 브로커
KR100661856B1 (ko) 에이전트 기반의 서비스 디스커버리 시스템과 서비스디스커버리 방법 및 이를 기록한 기록매체
Elenius et al. Ontology-based Service Discovery in P2P Networks.
Jun et al. Controlling non IP bluetooth devices in UPnP home network
Lin et al. Osgi-based smart home architecture for heterogeneous network
US20050114482A1 (en) Apparatus and method for requesting service provided by network equipment
KR100501899B1 (ko) 범용 플러그앤플레이를 지원하기 위한 프록시 장치 및 그동작방법
JP2015201758A (ja) 中継装置、通信システム、情報処理方法及びプログラム
KR20100045081A (ko) Dpws와 웹서비스의 연동방법
Bromberg et al. Interoperability of service discovery protocols: Transparent versus explicit approaches

Legal Events

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

Payment date: 20130614

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140528

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20150616

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20160615

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20170614

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20180612

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20190613

Year of fee payment: 10