KR101006924B1 - Jini서비스와 웹서비스간의 연동을 위한 장치 및 방법 - Google Patents

Jini서비스와 웹서비스간의 연동을 위한 장치 및 방법 Download PDF

Info

Publication number
KR101006924B1
KR101006924B1 KR1020080104696A KR20080104696A KR101006924B1 KR 101006924 B1 KR101006924 B1 KR 101006924B1 KR 1020080104696 A KR1020080104696 A KR 1020080104696A KR 20080104696 A KR20080104696 A KR 20080104696A KR 101006924 B1 KR101006924 B1 KR 101006924B1
Authority
KR
South Korea
Prior art keywords
service
information
genie
lookup
adapter
Prior art date
Application number
KR1020080104696A
Other languages
English (en)
Other versions
KR20100045656A (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 KR1020080104696A priority Critical patent/KR101006924B1/ko
Publication of KR20100045656A publication Critical patent/KR20100045656A/ko
Application granted granted Critical
Publication of KR101006924B1 publication Critical patent/KR101006924B1/ko

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/2807Exchanging configuration information on appliance services in a home automation network
    • H04L12/2814Exchanging control software or macros for controlling appliance services in a home automation network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Automation & Control Theory (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Economics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)

Abstract

본 발명은 유비쿼터스 환경에서 Jini 서비스와 웹서비스간의 연동을 위한 장치 및 상기 장치를 이용한 Jini 서비스와 웹서비스간의 연동방법에 관한 것으로서, 더욱 상세하게는 룩업서비스, 어댑터, 등록 에이전트, 질의 에이전트, 디바이스/서비스 레지스트리, 컨텍스트 레지스트리 및 UDDI를 포함하는 Jini 서비스와 웹서비스간의 연동을 위한 장치 및 그 장치를 이용한 연동방법에 관한 것이다.
본 발명에 의하면, 웹서비스 사용자는 지니 서비스를 발견 및 사용할 수 있게 되고, 지니 시스템 사용자도 웹서비스를 발견 및 사용할 수 있게 되므로, 결국 모든 사용자가 유비쿼터스 환경의 모든 서비스를 발견하고 사용할 수 있게 된다.
유비쿼터스, 지니, 웹서비스, 어댑터, 연동, 장치

Description

Jini서비스와 웹서비스간의 연동을 위한 장치 및 방법{A Method of Interoperability between DPWS and Web Services }
본 발명은 유비쿼터스 환경에서 Jini 서비스와 웹서비스간의 연동을 위한 장치 및 상기 장치를 이용한 Jini 서비스와 웹서비스간의 연동방법에 관한 것이다.
컴퓨팅 및 네트워크의 발전은 정보가전의 기능을 다양화하고 지능화를 촉진시키고 있다. 이러한 정보가전의 발전으로 유비쿼터스에 대한 관심이 증가하고 있다. 유비쿼터스는 언제, 어디서든, 어떤 네트워크에 있는 어떤 디바이스의 어떤 서비스도 이용 가능하도록 지원하는 환경이다(M. Satyanarayanan. Pervasive Computing: Vision and Challenges. IEEE Personal Communications, pp.10-17, 2001). 유비쿼터스 환경을 실현하기 위하여 서비스 동적 발견 및 바인딩을 제공하는 다양한 서비스 디스커버리 미들웨어(Jini(Sun Microsystems. Jini Architecture Specification. http://www.sun.com/jini/), DPWS(Hendrik Bohn, "SIRENA - Service Infrastructure for Real-time Embedded Networked Devices: A service oriented framework for different domains" , 2006), Havi(The Havi Organization, Havi Version 1.1 Specific ation. http://www.havi.org) 등)들이 개발되었다. 본 문서에서는 서비스 디스커버리 미들웨어를 서브네트워크라 칭한다. 하지만 이러한 서브네트워크들은 하기 표 1과 같이 서비스 기술방식, 통신방식, 시스템 기술 언어에서 차이점을 갖는다. 각각의 서브네트워크는 각각 서비스를 사용하기 위하여 필요한 정보를 자바 클래스, WSDL, 구조체를 이용하여 서비스를 기술하고 있다. 그리고 자바의 통신방식은 RMI, HTTP기반의 SOAP메시지, 무선통신 기반인 IEEE1394를 이용하여 각각 통신을 하고 있으며, Jini와 Havi는 자바를 이용하여 구현을 하고 있으며, DPWS는 C++ 및 자바를 이용하여 구현이 가능하다.
Figure 112008073936897-pat00001
이와 같은 다양한 서브네트워크 간의 상호운용을 해결함으로써 진정한 유비쿼터스를 이룰 수 있게 된다.
서브네트워크의 상호운용을 위한 방식으로는 서브네트워크 간의 개별 브릿지 방식과 통합 미들웨어 구조 기반 방식이 있다.
서브네트워크 간의 브릿지 연동 방식은 이기종 서브 네트워크들을 연동하기 위한 서브네트워크간 1:1브릿지 방식으로 상호 운용을 해결하는 방식이다. 지니 시스템에서 이질 서브네트워크과의 상호운용을 각각 브릿지를 생성을 해야한다. 이 방식은 두 서브네트워크간의 연동은 용이한 반면, 다양한 서브네트워크간의 연동을 해결하지는 못하였다. 새로운 서브네트워크가 등장하게 되면 현재 존재하는 서브네트워크에 대하여 n(n-1)만큼의 브릿지를 생성해야한다. n은 현재 존재하는 서브네트워크의 수를 나타낸다. 새로운 서브네트워크의 등장은 브릿지의 개수도 증가할 뿐만 아니라 연결에 있어서 복잡성을 갖게 되며, 서브 네트워크간의 연결을 위해 일관된 방법을 제시하지 못하고 있으며, 확장성에도 문제가 있다.
통합 미들웨어 방식은 하나의 추상화된 공통 계층을 통하여 각 서브네트워크들을 연결하는 구조를 가지고 있다. 이러한 구조는 새로운 미들웨어가 출현하더라도 해당 어댑터만 구현되면 쉽게 다른 서브 네트워크들과 통합될 수 있다.
지니 시스템은 자바를 기반으로 다양한 방식으로 네트워크에 접속되어 있는 지능형 기기들이나 소프트웨어들이 동적으로 상호 작용을 할 수 있는 기술로서, 도 1에 도시된 바와 같은 구조를 갖는다.
지니 서비스는 플록시(Proxy)에 서비스를 검색하고 사용하기 위한 정보를 담아 룩업서비스(Lookup Service)에 등록한다. 룩업서비스는 서비스와 사용자 간의 브로커 역할을 담당한다. 그리고 지니 시스템은 RMI를 이용하여 서로 간에 통신을 한다.
지니 시스템은 플록시에 서비스 아이디(ServiceID), 서비스 인터페이스 오브젝트(Service Interface Object), 어트리뷰트세트(AttributeSets)정보를 제공한다. 어트리뷰트세트에는 서비스에 대한 추가 정보로, 주소, 위치, 서비스 설명, 서비스 상태 정보관련 정보를 담게 된다. 그리고 지니 시스템은 그룹정보를 활용함으로써 서비스에 대한 이용제한을 하기위한 방법으로 활용한다. 모든 사용자가 사용가능한 서비스는 'Publish'의 그룹에 속하게 되며, 그룹정보는 관리자에 의해서 등록, 삭제, 변경 될 수 있다. 관리자에 의해서 등록된 그룹은 그룹에 속한 클라이언트만이 사용이 가능하다.
지니 시스템은 룩업서비스의 서비스레지스터럴(ServiceRegistrar)에 이벤트 정보를 저장하게 된다. 저장된 이벤트 정보는 다음 표 2에 나타낸 바와 같은 세 가지 범주로 되어 있다.
Figure 112008073936897-pat00002
지니 클라이언트는 서비스레지스터럴에 저장된 이벤트를 위의 세 가지 범주를 이용하여 지니 서비스와 관련한 이벤트를 처리할 수 있다.
지니 시스템은 서비스를 기술함에 있어서 자바 클래스를 이용하여 기술하고 RMI를 통하여 서비스를 발견하고 사용하게 된다. 반면에, 웹서비스는 WSDL을 이용하여 서비스를 기술하고 SOAP메시지를 기반으로 서비스를 발견하고 사용하는 형태를 갖는다. 따라서 이러한 지니 시스템과 웹서비스 간의 차이로 인하여 서로간의 서비스를 사용할 수 없다.
지니와 웹서비스 사용자가 서비스를 발견하고 사용하기 위해서 GOAL(General brOkering Architecture Layer)과 같은 기법이 고안된 바 있다.
GOAL은 웹서비스를 지니 서비스로 변환하여 룩업서비스에 등록하고, 지니 서비스를 웹서비스로 변환하여 UDDI에 등록한다. GOAL은 웹서비스를 UDDI에 등록하고 동일 웹서비스에 대하여 지니 서비스로 변환을 하여 룩업서비스에도 등록한다. 지니 서비스는 룩업 서비스에 등록될 뿐만 아니라 웹서비스로 변환이 되어 UDDI에도 등록된다. 이렇게 각각 등록된 서비스에 대하여 웹서비스 클라이언트는 UDDI를 검색을 하여 웹서비스 및 지니 서비스를 사용하게 되며, 지니 클라이언트는 룩업서비스를 통하여 웹서비스 및 지니 서비스를 검색하고 사용할 수 있게 된다.
하지만 GOAL은 이벤트 정보를 활용할 수 없는 구조이므로, 웹서비스 클라이언트가 지니 서비스를 사용함에 있어서 지니 서비스가 현재 사용가능한가를 판단할 수 없으며, 서비스의 현재 위치를 고려하지 않음으로써 클라이언트의 위치에서 사용가능한 서비스 검색이 불가능하다. 지니 클라이언트가 웹서비스를 사용함에 있어서도 새롭게 등장한 서비스에 대하여 검색이 불가능하다.
또한 GOAL은 모든 웹서비스를 지니 서비스로 1 대 1 변환을 함으로써 지니 서비스를 저장하기 위하여 대용량의 룩업서비스를 필요로 한다. 그리고 룩업서비스가 재부팅되는 경우 등록되어 있던 모든 정보가 사라지게 됨으로써, 지니 서비스를 재등록시키고, 웹서비스에 대하여 다시 지니 서비스로 변환 및 등록이 이루어져야하는 단점이 있다.
본 발명은 유비쿼터스 환경에서 Jini 기반의 서비스와 웹서비스를 연동하여 사용할 수 있게 하는 장치 및 그를 이용한 연동방법을 제공하는 것을 목적으로 한다.
전술한 과제를 해결하기 위한 본 발명은, 유비쿼터스 환경에서 서브네트워크의 서비스 동적 상태 반영을 위한 장치 및 방법을 제공한다.
(1) Jini 서비스와 웹서비스간의 연동을 위한 장치
본 발명은, 룩업서비스, 어댑터, 등록 에이전트, 질의 에이전트, 디바이스/서비스 레지스트리, 컨텍스트 레지스트리 및 UDDI를 포함하는 것으로서, (A) 상기 룩업서비스는, 네트워크에 존재하는 Jini 디바이스 및 서비스를 검색하여, 이들의 메타데이터 정보 및 이벤트 정보를 저장하며; (B) 상기 어댑터는, ① 상기 룩업서비스에 지니 서비스와 관련한 소스파일을 요청하여 전달받아 이를 등록 에이전트에 전달하고 ② 지니 서비스에 대한 웹서비스를 생성하고, 생성된 웹서비스의 서비스 정보를 등록 에이전트로 전달하며; (C) 상기 등록 에이전트는, 상기 어댑터로부터 전달받은 소스파일 중에서 지니 서비스의 명세 정보와 동적상태 정보를 각각 상기 UDDI, 디바이스/서비스 레지스트리 및 컨텍스트 레지스트리에 등록하며; (E) 상기 질의 에이전트는, 상기 룩업서비스에 의해 저장된 서비스가 상기 디바이스/서비스 레지스트리와 컨텍스트 레지스트리에 이미 등록이 되어 있는 상태인가를 파악하여 그 정보를 상기 어댑터로 전달하는(이미 등록되어 있는 서비스의 중복등록을 방지); Jini 서비스와 웹서비스간의 연동을 위한 장치에 관한 것이다.
(2) 서비스 동적 상태 반영을 위한 방법
또한 본 발명은 상기 장치를 이용한 것으로서, 각각 다음과 같은 단계로 이루어지는 훅업 과정, 지니 서비스 등장 과정, 서비스 상태정보 변경 과정, 서비스 기술정보 변경 과정, 서비스 그룹정보 등록 과정, 서비스 그룹정보 삭제 과정, 룩업서비스 퇴장 과정 및 지니 서비스 퇴장 과정을 포함하는 Jini 서비스와 웹서비스간의 연동방법에 관한 것이다.
(A) 훅업 (Hook-up) 과정 : ⓐ 상기 룩업서비스가, 네트워크에 존재하는 Jini 디바이스 및 서비스를 검색하여 이들의 메타데이터 정보 및 이벤트 정보를 저장하는 단계 ⓑ 상기 어댑터가, 룩업서비스를 검색하여 룩업서비스에 등록된 Jini 디바이스 또는 서비스에 대한 정보를 획득하는 단계 ⓒ 상기 어댑터가, 검색된 Jini 서비스들을 웹서비스로 변환하여 하고, 생성된 웹서비스의 정보 및 상기 검색된 Jini 디바이스 또는 서비스의 메타 정보를 등록 에이전트로 전송하는 단계 ⓓ 등록 에이전트가 상기 메타 정보를 각각 UDDI 레지스트리, 디바이스/서비스 레지스트리 및 컨텍스트 레지스트리에 등록하는 단계.
(B) 지니 서비스 등장 과정 : ⓐ 상기 룩업서비스가, 네트워크에 존재하는 Jini 디바이스 및 서비스를 검색하여 이들의 메타데이터 정보 및 이벤트 정보를 저장하는 단계 ⓑ 새로운 서비스가 등장하여 이벤트가 발생하면, 상기 룩업서비스가 이벤트 정보를 상기 어댑터에 전달하는 단계 ⓒ 상기 어댑터가 질의 에이전트를 통해, 상기 이벤트가 발생한 서비스가 이미 등록되어 있는 것인지를 확인하는 단계 ⓓ 이미 등록되어 있는 서비스라면, 상기 컨텍스트 레지스트리에서 해당 서비스에 대를 "사용가능" 상태로 전환하는 단계 ⓔ 신규 서비스일 경우, 상기 어댑터가, 룩업서비스로부터 상기 서비스에 대한 정보를 요청하고 획득하는 단계 ⓕ 상기 서비스에 대한 가상 웹서비스를 생성하여, 생성된 웹서비스의 서비스 정보 및 관련 메타 정보를 등록 에이전트로 전송하는 단계 ⓖ 상기 등록 에이전트가 상기 메타 정보를 각각 디바이스/서비스 레지스트리 및 컨텍스트 레지스트리에 등록하는 단계.
(C) 서비스 상태정보 변경 과정 : ⓐ 상기 룩업서비스가, 네트워크에 존재하는 Jini 디바이스 및 서비스를 검색하여 상태정보 변경 이벤트가 발생한 디바이스 또는 서비스의 정보를 저장하는 단계 ⓑ 상기 룩업서비스가 이벤트 정보를 상기 어댑터에 전달하는 단계 ⓒ 이벤트 정보를 등록 에이전트로 전송하여, 상기 등록 에이전트가 상기 디바이스/서비스 레지스트리에 저장된 상기 이벤트가 발생한 서비스에 대한 상태정보를 변경 등록하는 단계.
(D) 서비스 기술정보 변경 과정 : ⓐ 상기 룩업서비스가, 네트워크에 존재하는 Jini 디바이스 및 서비스를 검색하여 기술정보 변경 이벤트가 발생한 정보를 저장하는 단계 ⓑ 상기 룩업서비스가 이벤트 정보를 상기 어댑터에 전달하는 단계 ⓒ 상기 어댑터가 이벤트 정보를 등록 에이전트로 전송하여, 상기 디바이스/서비스 레지스트리 및 컨텍스트 레지스트리에 저장된 상기 이벤트가 발생한 서비스의 기술정보를 변경 등록하는 단계.
(E) 서비스 그룹정보 등록 과정 : ⓐ 상기 룩업서비스가, 새로운 지니 서비스 그룹을 입력받는 단계 ⓑ 상기 룩업서비스가 이벤트 정보를 상기 어댑터에 전달하는 단계 ⓒ 상기 질의 에이전트가, 상기 이벤트가 발생한 서비스가 이미 등록되어 있는 것인지를 확인하는 단계 ⓓ 이미 등록되어 있는 서비스라면, 상기 컨텍스트 레지스트리에서 해당 서비스에 대를 "사용가능" 상태로 전환하는 단계 ⓔ 신규 서비스라면, 상기 어댑터가, 룩업서비스로부터 상기 서비스에 대한 정보를 요청하고 획득한 후, 상기 서비스에 대한 가상 웹서비스를 생성하여 생성된 웹서비스의 서비스 정보 및 관련 메타 정보를 등록 에이전트로 전송하는 단계 ⓕ 상기 등록 에이전트가 상기 메타 정보를 각각 UDDI, 디바이스/서비스 레지스트리 및 컨텍스트 레지스트리에 등록하는 단계.
(F) 서비스 그룹정보 삭제 과정 : ⓐ 상기 룩업서비스가, 지니 서비스 그룹을 삭제하는 정보를 입력받는 단계 ⓑ 상기 룩업서비스가 이벤트 정보를 상기 어댑터에 전달하는 단계 ⓒ 이벤트 정보를 등록 에이전트로 전송하면, 상기 등록 에이전트가 상기 디바이스/서비스 레지스트리에 저장된 상기 이벤트가 발생한 서비스 그룹에 대한 상태정보를 변경 등록하는 단계.
(G) 룩업서비스 퇴장 과정 : ⓐ 상기 룩업서비스가, 룩업서비스에 등록된 모든 지니 디바이스에 대한 룩업서비스 기능을 중단하는 단계 ⓑ 상기 룩업서비스가 이벤트 정보를 상기 어댑터에 전달하는 단계 ⓒ 이벤트 정보를 등록 에이전트로 전송하면, 상기 등록 에이전트가 상기 디바이스/서비스 레지스트리에 저장된 상기 이벤트가 발생한 모든 지니 디바이스에 대한 상태정보를 변경 등록하는 단계.
(G) 지니 서비스 퇴장 과정 : ⓐ 상기 룩업서비스가, 소정의 시간간격으로 Jini 디바이스들에게 서비스 가능여부를 문의하는 단계 ⓑ 상기 서비스 가능여부 문의에 대한 응답이 소정의 시간동안 회신되지 않거나, 연결종료(Bye) 메시지가 있는 디바이스에 대하여, 상기 룩업서비스가 이벤트 정보를 상기 어댑터에 전달하는 단계 ⓒ 상기 어댑터가 상기 이벤트 정보를 등록 에이전트에 전달하면, 상기 등록 에이전트가 디바이스/서비스 레지스트리에 등록된 상기 디바이스에 대한 상태정보를 "사용 불가능" 상태로 변경 및 등록하는 단계.
본 발명에 의하면, 통합미들웨어 방식으로 Web Services on Universal Networks(WSUN)을 기반으로 지니 어댑터를 이용하여 Jini와 웹서비스간의 상호운용이 가능하게 된다. 따라서 웹서비스 사용자는 지니 서비스를 발견 및 사용할 수 있게 되고, 지니 시스템 사용자도 웹서비스를 발견 및 사용할 수 있게 되므로, 결국 모든 사용자가 유비쿼터스 환경의 모든 서비스를 발견하고 사용할 수 있게 된다.
보다 구체적으로, 본 발명에 의하여 웹서비스 클라이언트가 서비스를 검색하고 사용하기 위한 방법과 지니 클라이언트가 웹서비스를 발견하고 사용할 수 있게 되므로 각각 다음과 같은 장점을 갖는다.
(1) 웹서비스 클라이언트의 지니 서비스 검색 및 사용에서, 웹서비스 클라이언트는 서비스 상태 정보를 활용하여 현재 사용가능한 서비스를 목록을 받을 수 있으며, 또한 서비스의 위치를 제공받음으로써 서비스의 사용면에서 근접한 서비스의 활용이 가능하게 된다.
(2) 지니 클라이언트의 웹서비스 검색 및 사용에서, Generic 웹서비스를 활용함으로써 웹서비스를 지니서비스로 변환이 불필요하며, 룩업 서비스의 디바이스가 소량화가 가능하고, 나아가 UDDI를 직접 검색함으로써, 새롭게 등장한 웹서비스의 검색 및 사용이 가능하게 된다.
이하 첨부된 도면을 참조하여 본 발명에서의 각 구성요소들의 구조와 작용, 본 발명에 의한 장치/방법을 활용한 유비쿼터스 환경하에서의 디바이스/서비스 검색 및 이용방법을 보다 상세히 설명한다. 그러나 이러한 시도는 본 발명의 기술적 사상의 내용과 범위를 쉽게 설명하기 위한 예시일 뿐, 이에 의해 본 발명의 기술적 범위가 한정되거나 변경되는 것은 아니다. 또한 이러한 예시에 기초하여 본 발명의 기술적 사상의 범위 안에서 다양한 변형과 변경이 가능함은 당업자에게는 당연할 것이다.
이하에서 상기 어댑터는 '어댑터' 또는 '지니 어댑터'로 표현한다.
본 발명은, 룩업서비스, 어댑터, 등록 에이전트, 질의 에이전트, 디바이스/서비스 레지스트리, 컨텍스트 레지스트리 및 UDDI를 이용하여 Jini 서비스와 웹서비스간의 연동을 하기 위한 장치 및 방법에 관한 것이다.
본 발명의 설명에서, '메타데이터'는 디바이스의 위치나 서비스 종류에 관한 정보이며, '이벤트 정보'는 서비스의 등장 또는 퇴장에 관한 정보를 의미한다.
본 발명에서 지니 어댑터는 지니 클라이언트, 룩업서비스, 웹서비스 클라이언트를 확장하여 이벤트 처리, 서비스 검색, 웹서비스 생성, 웹서비스 검색, 메시지 변환 기능을 담당한다.
본 발명에 의한 장치에 의하면, 지니 클라이언트를 이용하여 지니 서비스 검색 및 이벤트 처리를 하게 되며, 룩업서비스를 확장하여 웹서비스를 검색하는 기능을 담당한다. 그리고 웹서비스를 사용하기 위하여 웹서비스 클라이언트 기능을 활용하게 된다. 그리고 추가적으로 메시지 및 프로토콜의 차이를 해결하기 위하여 메시지 변환 기능을 갖게 된다(도 3 참조).
본 발명에 의한 장치의 예시적 구조를 보여주는 블록도(A)와, 본 발명에 의한 장치와 방법에 있어서, 어댑터와 룩업서비스, UDDI, 웹서비스 및 지니서비스 사이의 상호관계를 도 4에 예시적으로 도시하였다.
본 발명에 의하면, 지니 서비스와 다른 종류의 서비스와의 상호작용을 위해 중간매개체로 웹서비스를 사용한다. 따라서 지니 서비스를 가상의 웹서비스로 변환하고, 변환·생성된 웹서비스가 저장되며, 생성된 웹서비스의 서비스 이름과 서비스 주소 값 같은 서비스 정보를 UDDI에 등록한다. 지니 클라이언트는 지니 어댑터를 통하여 UDDI에 등록된 웹서비스를 검색하여 지니 서비스를 사용하게 된다. 그리고 지니 클라이언트는 지니 어댑터를 통하여 웹서비스를 검색하고 사용하게 된다. 다시 정리하면, 지니 서비스는 가상의 웹서비스로 변환·생성되고 서비스 자체는 WSUN의 웹서비스 저장 공간에 저장된다. UDDI에는 생성된 서비스의 이름이나 서비스 주소 값(위치)과 같은 정보가 저장되는데, 이 정보를 통하여 다른 서비스들이 지니 서비스를 이용할 수 있게 되는 것이다. 참고로 도 5에 "Virture Service"라 되어있는데 이는 실질적인 서비스가 전달되는 것이 아니라 서비스에 대한 정보만 전달된다는 의미이다.
즉, 지니 어댑터는 룩업 서비스 기능과 웹서비스 클라이언트 기능을 모두 가지고 있다. 물론 지니 서브네트워크에는 한 개 이상의 룩업 서비스와 지니 클라이언트가 존재하며, 어댑터는 지니 서비스를 발견하기 위하여 룩업 서비스 기능도 지원하다. 또한, 지니 클라이언트가 웹서비스를 발견하도록 하기 위해 지니 어댑터가 마치 웹서비스 클라이언트인 것처럼 행동한다. 즉, 지니 서비스를 발견할 때 지니 서브네트워크의 입장에서는 지니 어댑터를 룩업 서비스처럼 보이게 하고, 웹 서비스를 발견할 때는 지니 어댑터가 WSUN에서는 웹서비스 클라이언트인 것처럼 보이게 한다.
본 발명에 의하면, 지니 어댑터 아키텍처에 따라서 (I) 웹서비스 클라이언트가 지니 서비스를 발견 및 사용과 (II) 지니 클라이언트가 웹서비스를 발견하고 사용하는 부분으로 나눌 수 있다.
(I) 웹서비스 클라이언트의 지니 서비스를 발견하고 사용하기
웹서비스 클라이언트가 지니 서비스를 발견하고 사용하기 위해서는 지니 서비스를 UDDI 및 디바이스/서비스 레지스트리에 등록하고, 지니 서비스를 웹서비스로 변환하는 과정을 필요로 한다.
지니 어댑터는 지니 시스템에 존재하는 모든 서비스들을 검색하여 등록 에이전트에게 알려주고, 등록 에이전트는 이 서비스들을 WSUN의 저장공간인 디바이스/서비스 레지스트리와 컨텍스트 레지스트리에 등록한다. 또한 앞의 과정에서 지니서비스를 변환한 웹서비스에 대한 정보를 UDDI에 등록한다.
지니 서비스를 웹서비스로 변환하는 과정과, 지니 이벤트 처리과정 및 웹서비스 클라이언트가 지니 서비스의 발견 및 사용하는 과정을 순서대로 설명한다.
1<웹서비스 생성>
이질의 네트워크 클라이언트가 지니 서비스를 발견하고 사용하기 위해서는 웹서비스로의 변환 과정을 거치게 된다. 웹서비스를 생성하기 위해서는 다음과 같이 4단계를 필요로 한다.
① 지니 어댑터에서 지니 서비스와 관련한 소스파일을 요청한다.
② 지니 어댑터에서 지니 서비스와 관련한 소스파일을 다운로드 한다.
③ Axis를 이용하여 웹서비스를 생성한다.
④ WSDL 주소 값을 레지스트리에 저장한다.
위와 같은 과정을 거쳐 생성된 웹서비스는 UDDI에 등록하기 위하여 비즈니스 엔터티에는 WSUN, 비즈니스 서비스에서는 지니 서비스 이름을 등록한다.
2<지니 이벤트 처리>
지니 시스템은 서비스에 대한 상태 정보를 제공한다. 이와 같은 정보를 활용하여 웹서비스 클라이언트에게 현재 사용 가능한 지니 서비스를 제공한다. 지니 시스템과 이질의 시스템이 각각 운용되고 있는 환경에서 유니버설 서비스 브로커가 등장하였을 때의 이벤트와 지니 시스템에서 발생하는, 훅업 과정, 지니 서비스 등장 과정, 서비스 상태정보 변경 과정, 서비스 기술정보 변경 과정, 서비스 그룹정보 등록 과정, 서비스 그룹정보 삭제 과정, 룩업서비스 퇴장 과정 및 지니 서비스 퇴장 과정 등의 이벤트에 대하여 소정의 작용을 하게 된다.
(A) Hook-Up
Hook-Up은 디자인 타임으로 지니 시스템과 이질의 시스템이 각각 운용되고 있는 환경에서 유니버설 서비스 브로커가 등장하여 지니 어댑터가 동작을 시작하면서 발생하는 이벤트이다. 지니 어댑터는 우선 지니 시스템에 있는 룩업 서비스들에서 각 룩업 서비스에 등록되어 있는 모든 서비스를 등록한다. 이 때 룩업 서비스에 저장되어 있던 이벤트 정보를 활용하여 서비스를 등록하며 도 5와 같은 과정을 거치게 된다.
지니 어댑터가 등장하여 현재 존재하는 지니 서비스들을 찾기 위해 지니 클라이언트 모듈을 이용하여 현재 시스템에 있는 룩업 서비스를 멀티캐스트 메시지를 이용하여 찾는다(1-2). 룩업 서비스들을 찾고 나면 각 룩업 서비스로 유니캐스트 메시지를 이용하여 각 룩업 서비스에 등록된 서비스들에 대한 정보를 얻어온다(3-4). 그리고 서비스를 사용하기 위한 서비스 인터페이스 정보를 얻기 위해 다시 한 번 유니캐스트 메시지를 보내고 응답을 받아온다(5-6). 한 개의 지니 서비스가 여러 개의 룩업서비스에 등록이 가능하기 때문에, (7)에서 서비스에 대하여 ServiceID를 판별하여 전에 등록이 되었던 서비스인가를 판별하고 등록된 서비스가 아니라면 다음을 진행한다. 지니 서비스를 다른 종류의 서비스에서도 사용하기 위해 지니 서비스를 웹서비스로 생성하는 과정(8)을 거쳐 각각의 레지스트리에 저장하기 위하여 추출된 서비스 정보를 저장하기 위하여 등록 에이전트에게 인자 값을 넘기게 된다(9). 등록 에이전트는 생성한 웹서비스에 관한 정보를 UDDI에 저장을 하고(10-11), 지니 서비스에 대한 메타데이터 및 위지 정보를 디바이스/서비스 레지스트리 및 컨텍스트 레지스트리에 저장한다.(12-16).
다음에 기술하는 이벤트 처리는 런타임으로 지니 어댑터가 동작하고 있는 상태에서 지니 시스템에서 발생하는 이벤트이다.
(B) 지니 서비스 등장
지니 서비스 등장 이벤트는 지니 어댑터가 동작하고 있는 상태에서 지니 시스템의 룩업서비스에 새로운 서비스가 등장 하였을 때를 말한다. 이와 관련된 이벤트는 룩업서비스의 Registrar에 등록된 이벤트를 활용하게 된다.
지니 서비스 등장과 관련하여 이벤트를 처리하는 과정은 도 6과 같다. (1-5)과정은 지니 시스템에서 서비스가 룩업서비스에 등록되는 과정과 동일하다. 서비스가 등록되어 이벤트가 발생하게 되면 지니 어댑터는 룩업서비스로부터 관련 이 벤트 정보를 받아오게 된다(6-7). 등록 이벤트에 관한 관련 정보를 받아오게 되면 서비스의 SerivceID를 이용하여 질의 에이전트를 통하여 동일 서비스가 레지스트리에 등록이 되어 있는 상태인가를 판별하게 된다(8-11). 지니 서비스에 대한 정보가 존재할 경우, 그 서비스는 웹서비스로 등록이 되었던 지니 서비스이다. 그러한 서비스의 경우 (13-16)의 과정을 거치게 된다. (13-16)과정은 현재의 서비스가 예전에 등록이 되었으나, 퇴장을 했다가 다시 등장한 경우 이므로 서비스의 상태를 사용 불가능 상태를 사용 가능 상태로 바꾸는 과정을 처리한다.
하지만 존재하지 않는 서비스의 경우, 지니 어댑터는 관련 서비스에 대한 정보를 룩업서비스에 요청하게 되고, 서비스의 정보를 받아오게 된다(17-18). (19-27)은 Hook-Up단계에서 서비스를 저장하기 위한 과정과 동일하다.
(C) 서비스 상태정보 변경
서비스 상태 정보 변경 이벤트는 서비스가 현재 사용 중이거나 서비스에서 오류가 발생하여 사용하지 못하는 경우를 말한다(도 7 참조).
지니 서비스는 상태정보가 변경이 발생하게 되면, 발생한 이벤트에 관한 정보를 룩업서비스에 등록하게 된다(1). 지니 어댑터는 일정 시간 간격마다 룩업 서비스에 이벤트가 발생했는지를 유니캐스트 메시지로 물어보고 새로운 이벤트가 있을 경우 룩업서비스로부터 관련 이벤트 정보를 받아오게 된다(2-3). 지니 어댑터는 관련 이벤트를 이용하여 레지스트리에 등록된 서비스의 상태정보를 변경하기 위한 과정을 거치게 된다(4-7). 지니 서비스는 상태정보를 다양하게 처리하고 있지 만, 본 발명의 예시적 설명에서는 서비스의 상태정보를 사용가능과 사용불가능으로 구분하고 있다. 현재 서비스가 사용 중이거나 오류가 발생하게 되면 다른 사용자는 서비스를 사용할 수 없기 때문이다.
(D) 서비스 기술정보 변경
지니 서비스는 이동성을 갖고 있다. 서비스 기술정보 변경은 지니 서비스의 주소, 위치와 같은 정보가 변경이 되어, 룩업서비스에 등록되는 경우이다(도 8 참조).
지니 서비스는 관련 이벤트를 룩업서비스에 등록하게 되고(1), 지니 어댑터는 관련 이벤트 정보를 룩업서비스로부터 받아오게 된다(2-3). 관련 정보에 대하여 레지스트리에 등록된 서비스정보를 변경하게 된다(4-9).
(E) 지니 서비스 그룹정보 등록
지니 시스템은 관리자에 의하여 그룹정보를 활용하여 서비스를 사용을 제한하고 있다. 그룹정보 등록 이벤트는 관리자에 의하여 추가된 그룹에 대하여 서비스가 등록되어 처리되는 과정을 나타낸다(도 9 참조).
관리자는 룩업서비스에 새로운 그룹을 추가하고 그룹에 속하는 서비스를 등록하게 된다(1-5). 지니 어댑터는 관련 이벤트를 룩업서비스로부터 받아오게 되고(7-8), 이 후의 과정은(9-28) 지니 서비스 등장과 동일한 과정을 거치게 된다.
(F) 지니 서비스 그룹정보 삭제
지니 서비스 그룹정보 삭제는 관리자에 의해서 그룹정보가 삭제되면서 그룹에 속해있던 서비스에 대하여 사용이 불가능한 상태가 발생하기 때문에 이를 처리하는 과정을 나타낸다(도 10 참조).
룩업서비스에 등록된 그룹정보를 삭제하기 위해서 그룹에 등록된 모든 지니 서비스에 알리게 되고 모든 서비스가 떠나게 되면 룩업서비스로부터 그룹정보를 삭제하게 된다(1,4). 이러한 서비스 그룹 퇴장 이벤트는 지니 어댑터에서 요청할 경우 관련 이벤트 정보를 전달한다(2-3). 지니 어댑터는 등록 에이전트를 통해 퇴장한 그룹에 포함되어 있던 모든 서비스에 대하여 서비스의 상태정보를 사용 불가능 상태로 변경하는 과정을 거친다(5-8).
(G) 룩업서비스의 퇴장
룩업서비스 퇴장은 룩업서비스의 기능을 하지 않을 경우에 룩업서비스에 등록된 서비스는 더 이상 서비스를 사용할 수 없는 상태가 된다. 따라서 이와 관련된 이벤트를 처리할 필요가 있다(도 11 참조).
룩업서비스는 더 이상 기능을 하지 않기를 원할 경우 모든 디바이스에게 정보를 알리고 응답을 받게 되면 룩업서비스 기능을 중지한다(1-3). 지니 어댑터는 알림 메시지를 받아 룩업서비스와 관련된 모든 서비스에 대하여 서비스의 상태를 변경한다(4-7).
(H) 지니 서비스 퇴장
지니 서비스 퇴장은 룩업서비스에 등록된 서비스가 더 이상 제공되지 않는 경우를 말한다. 지니 서비스의 퇴장은 두 개로 나누어 볼 수 있는데, 퇴장하는 서비스가 정상적으로 룩업서비스에 알리고 서비스 기능을 중지하는 경우와 디바이스의 문제로 인하여 서비스를 중지하는 경우로 나누어 볼 수 있다. 전자의 경우 룩업서비스에 관련 이벤트 정보가 등록되지만, 후자의 경우 리즈 시간을 활용하여 이벤트를 처리하게 된다.
지니 서비스가 정상적으로 퇴장(도 12 참조)을 하게 되면, 룩업서비스에 퇴장 이벤트를 알리고(1), 지니 어댑터는 관련 이벤트를 룩업서비스로부터 받아오게 된다(2-3). 그리고 이벤트와 관련된 서비스에 대하여 서비스 상태 정보를 사용불가능 상태로 변경한다(4-7).
만약 지니 서비스가 비정상적으로 퇴장(도 13 참조)하게 되면 디바이스에서 서비스 제공시간을 늘리는 리즈 이벤트가 발생되지 않는다. 룩업서비스는 리즈 시간이 되었을 때 퇴장한 서비스가 있다는 것을 알고 퇴장한 서비스에 대한 이벤트를 처리하기 위해 룩업서비스로부터 이벤트 정보를 얻어온다(1-2). 그리고 지니 어댑터는 퇴장한 서비스에 대한 상태 정보를 사용불가능 형태로 변경한다(3-6).
3<웹서비스 클라이언트가 지니 서비스의 발견 및 사용하는 과정>
지니 어댑터는 모든 이벤트를 레지스트리에 반영하게 된다. 웹서비스 클라이언트는 도 14와 같은 흐름으로 서비스를 발견하고 사용하게 된다.
웹서비스 클라이언트는 서비스를 발견하기 위하여 질의 에이전트(Query Agent)를 통하여 서비스를 발견하게 된다(1-4). 웹서비스의 경우, 바로 서비스를 사용을 한다. 하지만 지니 시스템에서 제공하는 서비스의 경우 디바이스/서비스 레지스트리에서 서비스의 상태정보를 검색하게 된다(7-10). 웹서비스 클라이언트는 상태정보를 반영하여 서비스를 사용하기 위하여 가상의 웹서비스를 호출하여 서비스를 사용하게 된다(11-12).
(II) 지니 클라이언트가 웹서비스를 발견하고 사용하기
지니 시스템은 멀티 캐스트 메시지를 이용하여 룩업서비스를 찾게 된다. 지니 클라이언트는 발견한 룩업서비스로부터 서비스레지스트럴(ServiceRegistrar) 객체를 이용하여 Lookup()메소드를 호출하여 서비스를 발견하게 된다. 서비스를 발견하기 위하여 서비스템플릿(ServiceTemplate)를 활용하게 되는데, 서비스템플릿은 ServiceID, ServiceType, AttributeSetTemplate를 포함하며, ServiceType을 활용하여 서비스를 검색하게 된다.
지니 시스템에서 지니 서비스를발견하고 사용하기위한 메시지를 활용하여 웹서비스를 검색하기 위해서 서로간의 매핑관계를 표 3에 나타내었다.
Figure 112008073936897-pat00003
지니 시스템은 룩업서비스에 있는 서비스를 검색하기 위하여 ServiceID, ServiceType, AttributeSetTemplate를 이용하여 서비스를 검색한다. 이러한 정보 중에서 ServiceType을 이용하여 서비스를 검색한다. 본 발명에서는 웹서비스를 검색하기 위하여 ServiceType을 이용하여 웹서비스를 검색하게 된다. 이것을 통하여 웹서비스를 지니 서비스로 변환하지 않고 웹서비스를 발견할 수 있게 된다.
지니 클라이언트는 서비스검색 결과에 대하여 룩업서비스로부터 ServiceID, ServiceName, Endpoint, Service Interface를 받게 된다. 이와 매핑되는 웹서비스 정보는 표 4와 같다.
Figure 112008073936897-pat00004
지니 어댑터는 지니 클라이언트에게 웹서비스의 UUID, 비즈니스 서비스 이름, 어댑터 주소 및 라우팅 플록시 내의 Generic Web Service를 호출하기 위한 인터페이스 받게 된다. 지니 클라이언트는 인터페이스를 통하여 Generic Web Service 호출하게 되고 웹서비스와 바인딩이 된다.
1<Generic 웹서비스>
Generic 웹서비스는 라우팅 플록시 내에 존재한다. Generic 웹서비스는 모든 웹서비스를 사용할 수 있는 서비스이다. 도 15에 도시된 바와 같이 지니 클라이언트는 지니 어댑터로부터 Generic 웹서비스를 호출할 수 있는 인터페이스를 통하여 웹서비스를 사용하게 된다.
2<지니 클라이언트가 웹서비스를 발견 및 사용하는 과정>
본 발명에서는 룩업서비스를 확장하여 wsLookup() 메소드를 활용함으로써 질의 에이전트(Query Agent)를 호출하여 UDDI에 등록된 서비스를 검색하게 된다.
지니 클라이언트가 웹서비스 발견하고 사용함에 있어서는 도 16과 같은 과정을 거치게 된다.
지니 클라이언트는 룩업서비스에 서비스 검색을 요청하게 되면 ServiceType을 이용하여 UDDI 및 디바이스/서비스 레지스트리를 검색하게 된다(3-8). 지니 클라이언트는 웹서비스를 사용하기 위하여 지니 어댑터에 웹서비스를 호출하게 되고 라우팅 플록시(Routing Proxy)내의 Generic 웹서비스를 통하여 웹서비스를 사용한다(11-14).
본 발명과 종래 기술을 비교하면 다음과 같다.
본 발명에서 어댑터는 지니 시스템에서 발생하는 이벤트를 처리하여 검색에 활용을 하였다. 이를 통하여, 웹서비스 클라이언트에서 지니 서비스를 발견하고 사용함에 있어서 서비스 상태정보 및 위치 정보를 활용하여 서비스 정보를 제공할 수 있다.
지니 클라이언트에서 웹서비스를 발견하고 사용함에 있어서 룩업서비스를 확장하여 UDDI를 검색하여 웹서비스를 발견하게 되며, 웹서비스를 사용함에 있어서 Generic웹서비스를 이용하여 웹서비스를 사용하게 된다.
GOAL과 지니 어댑터를 비교하였을 때 다음과 같은 사항으로 비교가 가능하다.
(1) 웹서비스 클라이언트의 지니 서비스 검색 및 사용상의 비교
GOAL과 지니 어댑터를 웹서비스 클라이언트가 지니 서비스를 발견하고 사용함에 있어서 서로간의 서비스 검색, 이벤트 정보, 웹서비스 생성시점에 따른 비교를 하면 표 5와 같다.
Figure 112008073936897-pat00005
두 시스템은 서비스를 동일하게 검색이 가능하지만 지니 어댑터는 이벤트 정보를 활용하여 서비스를 제공받을 수 있다. 이는 현재 사용 가능한 정보의 검색이 가능하게 된다. 또한 실행이 되고 있는 Run Time에도 웹서비스가 생성됨으로써 새롭게 등장한 지니 서비스도 검색이 가능하게 된다.
(2) 지니 클라이언트의 웹서비스 검색 및 사용상의 비교
GOAL과 지니 어댑터를 지니 클라이언트가 웹서비스를 발견하고 사용함에 있어서 서로간의 서비스 검색, 검색 대상, 서비스 변환 및 새롭게 등장한 웹서비스 검색에 따른 비교를 하면 표 6과 같다.
Figure 112008073936897-pat00006
두 시스템은 동일하게 웹서비스를 검색이 가능하나 서로간의 검색대상이 GOAL은 룩업서비스인 반면, 지니 어댑터는 UDDI를 활용하게 된다. 지니 어댑터는 새롭게 등장한 웹서비스에 대하여 검색이 가능하게 한다. 또한 검색대상의 차이에 따라 GOAL은 모든 웹서비스를 지니 서비스로 1:1 생성을 해야한다. 그러나 지니 어댑터는 Generic 웹서비스를 활용함으로써 서비스 변환이 없이 서비스 사용이 가능하게 한다.
도 1은 지니 시스템의 예시적 구조를 보여주는 블록도.
도 2는 종래 알려진 GOAL 시스템의 구성부 및 상호관계를 보여주는 개념도.
도 3은 본 발명의 장치가 수행하는 기능을 예시적으로 보여주는 블록도.
도 4는 본 발명에 의한 장치의 예시적 구조를 보여주는 블록도(A)와, 본 발명에 의한 장치와 방법에 있어서, 어댑터와 룩업서비스, UDDI, 웹서비스 및 지니서비스 사이의 상호관계에 대한 예시도(B).
도 5는 본 발명에 의한 장치와 방법에 있어서, 서비스의 훅-업 과정을 나타낸 흐름도.
도 6은 본 발명에 의한 장치와 방법에 있어서, 지니 서비스 등장 과정을 보여주는 흐름도.
도 7은 본 발명에 의한 장치와 방법에 있어서, 서비스 상태정보 변경 과정을 보여주는 흐름도.
도 8은 본 발명에 의한 장치와 방법에 있어서, 서비스 기술정보 변경 과정을 보여주는 흐름도.
도 9는 본 발명에 의한 장치와 방법에 있어서, 지니 서비스 그룹정보 등록 과정을 보여주는 흐름도.
도 10은 본 발명에 의한 장치와 방법에 있어서, 지니 서비스 그룹정보 삭제 과정을 보여주는 흐름도.
도 11은 본 발명에 의한 장치와 방법에 있어서, 룩업서비스의 퇴장 과정을 보여주는 흐름도.
도 12는 본 발명에 의한 장치와 방법에 있어서, 지니 서비스의 정상적인 퇴장 과정을 보여주는 흐름도.
도 13은 본 발명에 의한 장치와 방법에 있어서, 지니 서비스의 비정상적인 퇴장 과정을 보여주는 흐름도.
도 14는 본 발명에 의한 장치와 방법에 있어서, 웹서비스 클라이언트가 지니 서비스를 발견하고 사용하는 과정을 보여주는 흐름도.
도 15는 본 발명에 의한 장치와 방법에 있어서, Generic 웹서비스의 작용을 보여주는 블록도.
도 16은 본 발명에 의한 장치와 방법에 있어서, 지니 클라이언트가 웹서비스를 발견하고 사용하는 과정을 보여주는 흐름도.

Claims (2)

  1. 룩업서비스, 어댑터, 등록 에이전트, 질의 에이전트, 디바이스/서비스 레지스트리, 컨텍스트 레지스트리 및 UDDI를 포함하는 Jini 서비스와 웹서비스간의 연동을 위한 장치에 있어서,
    (A) 상기 룩업서비스는, 네트워크상에 하나 이상 존재하고 Jini 디바이스 및 서비스를 검색하여, 이들의 메타데이터 정보 및 이벤트 정보를 저장하며 ;
    (B) 상기 어댑터는, ① 상기 룩업서비스에 지니 서비스와 관련한 소스파일을 요청하여 전달받아 이를 등록 에이전트에 전달하고 ② 지니 서비스에 대한 웹서비스를 생성하고, 생성된 웹서비스의 서비스 정보를 등록 에이전트로 전달하고, ③ 지니 서비스에서 사용되는 메시지를 웹서비스에 사용되는 메시지로 변환하고, 웹서비스에서 사용되는 메시지를 지니 서비스에 사용되는 메시지로 변환하며, 변환된 지니 서비스를 웹서비스와 식별할 수 있도록 새로운 유니버설 ID를 부여하고 ④ 여러 개의 룩업 서비스를 관리하며;
    (C) 상기 등록 에이전트는, 상기 어댑터로부터 전달받은 소스파일 중에서 지니 서비스 명세 정보와 동적상태 정보를 각각 UDDI 레지스트리, 디바이스/서비스 레지스트리 및 컨텍스트 레지스트리에 등록하며;
    (E) 상기 질의 에이전트는, 상기 UDDI 레지스트리를 검색하여 상기 룩업서비스에 의해 저장된 서비스가 UDDI 레지스트리에 등록된 서비스일 때만 디바이스/서비스 레지스트리를 검색하고, 검색된 정보를 상기 어댑터로 전달하는(이미 등록되어 있는 서비스의 중복등록을 방지하는);
    것을 특징으로 하는 Jini 서비스와 웹서비스간의 연동을 위한 장치.
  2. 제 1 항에 의한 장치를 이용한 Jini 서비스와 웹서비스간의 연동방법에 있어서,
    (A) 다음의 단계로 이루어지는 훅업 (Hook-up) 과정
    ⓐ 상기 룩업서비스가, 네트워크에 존재하는 Jini 디바이스 및 서비스를 검색하여 이들의 메타데이터 정보 및 이벤트 정보를 저장하는 단계
    ⓑ 상기 어댑터가, 지니 네트워크상의 모든 록업서비스를 검색하여 중복된 서비스가 있을 경우 이를 통합하여 저장하고, 룩업서비스에 등록된 Jini 디바이스 또는 서비스에 대한 정보를 획득하는 단계
    ⓒ 상기 어댑터가, 가상 웹서비스를 생성하여 상기 어댑터에 저장하고, 상기 검색된 Jini 디바이스 또는 서비스의 메타 정보를 등록 에이전트로 전송하는 단계
    ⓓ 등록 에이전트가 상기 메타 정보를 각각 UDDI, 디바이스/서비스 레지스트리 및 컨텍스트 레지스트리에 등록하는 단계:
    (B) 다음의 단계로 이루어지는 지니 서비스 등장 과정
    ⓐ 상기 룩업서비스가, 네트워크에 존재하는 Jini 디바이스 및 서비스를 검색하여 이들의 메타데이터 정보 및 이벤트 정보를 저장하는 단계
    ⓑ 이벤트가 발생하면, 상기 룩업서비스가 이벤트 정보를 상기 어댑터에 전달하는 단계
    ⓒ 상기 질의 에이전트가, 각 룩업서비스를 검색하여 상기 이벤트가 발생한 서비스가 하나 이상의 룩업서비스에 등록되어 있는 것인지를 확인하는 단계
    ⓓ 이미 등록되어 있는 서비스라면, 상기 컨텍스트 레지스트리에서 해당 서비스에 대를 "사용가능" 상태로 전환하는 단계
    ⓔ 신규 서비스라면, 상기 어댑터가, 룩업서비스로부터 상기 서비스에 대한 정보를 요청하고 획득한 후,
    상기 서비스에 대한 가상 웹서비스를 생성하여 상기 어댑터에 저장하고,
    관련 메타 정보를 등록 에이전트로 전송하면, 상기 등록 에이전트가 상기 메타 정보를 각각 디바이스/서비스 레지스트리 및 컨텍스트 레지스트리에 등록하는 단계:
    (C) 다음의 단계로 이루어지는 서비스 상태정보 변경 과정
    ⓐ 상기 룩업서비스가, 네트워크에 존재하는 Jini 디바이스 및 서비스를 검색하여 상태정보 변경 이벤트가 발생한 정보를 저장하는 단계
    ⓑ 상기 룩업서비스가 이벤트 정보를 상기 어댑터에 전달하는 단계
    ⓒ 이벤트 정보를 등록 에이전트로 전송하면, 상기 등록 에이전트가 상기 디바이스/서비스 레지스트리에 저장된 상기 이벤트가 발생한 서비스에 대한 상태정보를 변경 등록하는 단계:
    (D) 다음의 단계로 이루어지는 서비스 기술정보 변경 과정
    ⓐ 상기 룩업서비스가, 네트워크에 존재하는 Jini 디바이스 및 서비스를 검색하여 기술정보 변경 이벤트가 발생한 정보를 저장하는 단계
    ⓑ 상기 룩업서비스가 이벤트 정보를 상기 어댑터에 전달하는 단계
    ⓒ 이벤트 정보를 등록 에이전트로 전송하면, 상기 등록 에이전트가 상기 디바이스/서비스 레지스트리 및 컨텍스트 레지스트리에 저장된 상기 이벤트가 발생한 서비스에 대한 기술정보를 변경 등록하는 단계:
    (E) 다음의 단계로 이루어지는 서비스 그룹정보 등록 과정
    ⓐ 상기 룩업서비스가, 새로운 지니 서비스 그룹을 입력받는 단계
    ⓑ 상기 룩업서비스가 이벤트 정보를 상기 어댑터에 전달하는 단계
    ⓒ 상기 질의 에이전트가, 상기 이벤트가 발생한 서비스가 이미 등록되어 있는 것인지를 확인하는 단계
    ⓓ 이미 등록되어 있는 서비스라면, 상기 컨텍스트 레지스트리에서 해당 서비스에 대를 "사용가능" 상태로 전환하는 단계
    ⓔ 신규 서비스라면, 상기 어댑터가, 룩업서비스로부터 상기 서비스에 대한 정보를 요청하고 획득한 후,
    상기 서비스에 대한 가상 웹서비스를 생성하여 상기 어댑터에 저장하고,
    관련 메타 정보를 등록 에이전트로 전송하면, 상기 등록 에이전트가 상기 메타 정보를 각각 디바이스/서비스 레지스트리 및 컨텍스트 레지스트리에 등록하는 단계:
    (F) 다음의 단계로 이루어지는 서비스 그룹정보 삭제 과정
    ⓐ 상기 룩업서비스가, 지니 서비스 그룹을 삭제하는 정보를 입력받는 단계
    ⓑ 상기 룩업서비스가 이벤트 정보를 상기 어댑터에 전달하는 단계
    ⓒ 이벤트 정보를 등록 에이전트로 전송하면, 상기 등록 에이전트가 상기 디바이스/서비스 레지스트리에 저장된 상기 이벤트가 발생한 서비스 그룹에 대한 상태정보를 변경 등록하는 단계:
    (G) 다음의 단계로 이루어지는 룩업서비스 퇴장 과정
    ⓐ 상기 룩업서비스가, 룩업서비스에 등록된 모든 지니 디바이스에 대한 룩업서비스 기능을 중단하는 단계
    ⓑ 상기 룩업서비스가 이벤트 정보를 상기 어댑터에 전달하는 단계
    ⓒ 이벤트 정보를 등록 에이전트로 전송하면, 상기 등록 에이전트가 상기 디바이스/서비스 레지스트리에 저장된 상기 이벤트가 발생한 모든 지니 디바이스에 대한 상태정보를 변경 등록하는 단계:
    (H) 다음의 단계로 이루어지는 지니 서비스 퇴장 과정
    ⓐ 상기 룩업서비스가, 소정의 시간간격으로 Jini 디바이스들에게 서비스 가능여부를 문의하는 단계
    ⓑ 상기 서비스 가능여부 문의에 대한 응답이 소정의 시간동안 회신되지 않거나, 연결종료(Bye) 메시지가 있는 디바이스에 대하여,
    상기 룩업서비스가 이벤트 정보를 상기 어댑터에 전달하고, 상기 등록 에이전트는 상기 이벤트 정보를 등록 에이전트에 전달하면,
    상기 등록 에이전트가 디바이스/서비스 레지스트리에 등록된 상기 디바이스에 대한 상태정보를 "사용 불가능" 상태로 변경등록하는 단계:
    를 포함하는 것을 특징으로 하는 Jini 서비스와 웹서비스간의 연동방법.
KR1020080104696A 2008-10-24 2008-10-24 Jini서비스와 웹서비스간의 연동을 위한 장치 및 방법 KR101006924B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080104696A KR101006924B1 (ko) 2008-10-24 2008-10-24 Jini서비스와 웹서비스간의 연동을 위한 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080104696A KR101006924B1 (ko) 2008-10-24 2008-10-24 Jini서비스와 웹서비스간의 연동을 위한 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20100045656A KR20100045656A (ko) 2010-05-04
KR101006924B1 true KR101006924B1 (ko) 2011-01-10

Family

ID=42273276

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080104696A KR101006924B1 (ko) 2008-10-24 2008-10-24 Jini서비스와 웹서비스간의 연동을 위한 장치 및 방법

Country Status (1)

Country Link
KR (1) KR101006924B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101572008B1 (ko) * 2015-09-18 2015-11-25 이상동 부하에 대한 자동조절 기능이 내장된 버 제거용 툴유닛

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101572008B1 (ko) * 2015-09-18 2015-11-25 이상동 부하에 대한 자동조절 기능이 내장된 버 제거용 툴유닛

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"유니버설 네트워크 상에서 웹서비스 프레임워크 구현", 정보과학회논문지 : 컴퓨팅의 실제 및 레터 제14권제2호, 임형준 외 6인, pp.143~157 (2008.04.30.) 1부.*
"Design of the adaptor for interoperability between jini services and web services," Proceedings of IADIS TNS, pp.100-104 (2008.07.24.) 1부.*

Also Published As

Publication number Publication date
KR20100045656A (ko) 2010-05-04

Similar Documents

Publication Publication Date Title
EP1542409B1 (en) Protocol for multi-hop ad-hoc networks
KR100694155B1 (ko) 웹서비스를 통해 홈 네트워크 기기의 서비스를 홈 네트워크외부에 제공하는 방법 및 장치
CN100518125C (zh) 通信装置、系统和方法
US20030140119A1 (en) Dynamic service discovery
US20200314149A1 (en) Method for providing wireless application privilege management
US20030005132A1 (en) Distributed service creation and distribution
EP2151095B1 (en) Method and apparatus for discovering universal plug and play device using resource information
CN102790813B (zh) 基于IPv6网络的通信方法和系统以及终端设备
Raverdy et al. A multi-protocol approach to service discovery and access in pervasive environments
KR100901281B1 (ko) 유비쿼터스 웹서비스 방법
CN112637332A (zh) 一种服务注册发现方法和系统
KR100661856B1 (ko) 에이전트 기반의 서비스 디스커버리 시스템과 서비스디스커버리 방법 및 이를 기록한 기록매체
KR101006924B1 (ko) Jini서비스와 웹서비스간의 연동을 위한 장치 및 방법
CN102891763B (zh) 一种获取cim资源的方法和装置
KR100965458B1 (ko) 유비쿼터스 서브네트워크 연동을 위한 브로커
US20040199643A1 (en) Distributed service component systems
KR101348927B1 (ko) WSUN을 위한 OpenAPI 어뎁터
JP4077417B2 (ja) ゲートウェイ装置、ゲートウェイ装置を用いたメディア送受信方法、メディア送受信プログラム、および記録媒体
JP2004201201A (ja) Wap端末及び通信方法並びに通信プログラム
JP2008021325A (ja) マルチエージェントシステム
CN115766687B (zh) 一种家庭网关ipv6文件系统及其交互方法
JP3968066B2 (ja) 名前解決システム
Son et al. Towards an efficient discovery services in OPC unified architecture
Siebert et al. Universal adaptor: A novel approach to supporting multi-protocol service discovery in pervasive computing
KR101006920B1 (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: 20131231

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20141231

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160113

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20170103

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190103

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20200103

Year of fee payment: 10