• 검색 결과가 없습니다.

스케일러블 RUI 프레임워크 기술

문서에서 R&D연구결과보고서 (페이지 132-147)

스케일러블 RUI 프레임워크는 사용자의 상황, 디바이스 협업 상황, 콘텐츠 변환 등을 반영하여 사용자 환경에 최적화된 N-스크린 서비스를 제공하는 것을 목표로 한다. 아래 그림은 N-스크린 서비스 플랫폼을 이용하여 구성되는 전체 시스템 개념도를 나타내고 있다.

그림 150 스케일러블 RUI 시스템 개념도

N-스크린 서비스 플랫폼을 이용한 전체 시스템의 구성 요소로는 스마트 디바이스, 홈게이트웨 이/셋톱박스, N-스크린 서버, 미디어 변환 서버, 콘텐츠 서버가 있다. 각 구성 요소에 대한 역할 은 다음과 같다.

Ÿ 스마트 디바이스: 최종 사용자가 N-스크린 어플리케이션을 설치하여 사용할 수 있는 시 스템 구성요소이며 N-스크린 어플리케이션 RUI 인터페이스를 제공하기 위한 RUI 에이 전트, RUI 뷰어를 포함하고 있다.

Ÿ 홈게이트웨어/셋톱 박스: 스마트 디바이스의 입출력 정보를 관리하고 홈 네트워크에서 실행 가능한 RUI 기반의 애플리케이션 목록과 디바이스 뷰와 RUI의 연결 관계를 시스 템 구성요소이며 RUI 관리자 및 입출력 관리자를 포함하고 있다.

Ÿ N-스크린 서버: 홈 네트워크 내에서 사용자에 의해 실행 가능한 각 어플리케이션의 UI 를 저장 및 관리하고, 클라이언트 단말이 요청한 경우 단말의 프로파일에 맞게 UI를 변 환하여 전달하는 역할을 담당하는 시스템 구성요소로 UI Factory 관리자와 UTS 등 변 환 엔진 등이 포함되어 있다.

Ÿ RUI 관리자: 홈 네트워크 내의 스마트 단말에서 수행되는 RUI 기반 애플리케이션을 사 용자가 단말에 상관없이 선택하여 제어할 수 있도록 애플리케이션 정보와 스크린 간의 연동 관계를 관리하고, 사용자의 요청이 있는 경우 관련 RUI나 이벤트 변환 정보를 UI Factory 관리자나 RUI 에이전트로부터 수신하여 전달하는 역할을 수행한다.

Ÿ RUI 에이전트: 홈 네트워크 내의 스마트 단말에서 동작하며 사용자가 원하는 애플리케 이션의 UI를 수신하거나 이벤트 제어 기능을 수신하기 위하여 RUI 관리자와 연동하여 동작하는 시스템 구성 요소로써, RUI Viewer에게 수신된 RUI나 컴포넌트를 전달하며 단말의 입력 기능을 분석하여 정규화된 RUI 이벤트로 변환하는 기능도 제공한다.

Ÿ RUI Viewer: HTML5 기반의 RUI 디스크립션을 화면에 출력하는 역할을 하며 단말의 뷰를 모델링하기 위하여 그래픽, 이벤트, 비디오, 오디오 등으로 구성된 스크린 페이지 를 정의하고, 사용자의 요구에 의해 다른 단말로부터 수신된 RUI 전체 혹은 일부인 컴 포넌트나 이벤트 제어 기능을 이용하여 가상화된 단말의 스크린 페이지를 구성한다.

Ÿ RUI Control Server/Client: 애플리케이션은 단말 플랫폼에 종속적이고 사용자의 요구 에 의하여 설치되어 동작하는 로직과 HTML5 기반으로 다중 단말간에 이동하며 제어할 수 있도록 지원하는 RUI로 구성되며, 둘 간에 통신은 RUI Control Server/Client로 구 성된 통신 채널로 이루어진다.

N-스크린 Scalable RUI 프레임워크는 가상 IO 지원 RUI 프레임워크 서브시스템과 N-스크린 UI 변환 서브시스템으로 정의한다. 각 서브시스템에 대한 세부 기술 내용은 다음과 같다.

나. 가상 IO 지원 RUI 프레임워크 서브시스템 1) 시스템 구조

가상 IO 지원 RUI 프레임워크는 홈네트워크에 연결되어 있는 스마트 폰, 태블릿 PC, 셋톱박스 등과 같은 스마트 단말들을 활용하여 사용자의 요구에 따라 원격 단말의 뷰를 공유하거나 애플리 케이션을 원격으로 제어하는 기능을 지원한다. 즉, 가상 IO 지원 RUI 프레임워크는 스마트 단말 들에 설치되어 실행되는 애플리케이션들을 장소에 상관없이 다양한 스마트 단말들을 통해 끊김없 이 제어할 수 있도록 지원하기 위하여 Push/Pull 방식을 통한 RUI 이동성 기능, 실행 가능한 RUI 검색 기능, 각 단말의 뷰를 제어하기 위하여 스크린 페이지를 생성, 단말간에 뷰를 공유하거나 이 벤트 혹은 컴포넌트를 공유하는 기능을 제공한다. 또한, 다양한 입출력에 대하여 동일한 효과를 제공하도록 이종 IO에 대한 추상화 기능을 정의하여 가상 IO를 지원한다.

아래 그림은 가상 IO 지원 RUI 프레임워크 관리 기능을 위한 컴포넌트의 구조도를 보여준다.

그림 151 Virtual IO 지원 RUI 프레임워크 구조

가상 IO 지원 RUI 프레임워크 관리 기능을 구성하는 시스템 구성 컴포넌트는 RUI 관리자(RM), RUI 뷰어(RV), RUI 에이전트(RA)를 들 수 있으며, RUI 관리자는 홈 서버 역할을 하는 댁내의 셋 톱박스나 별도의 서버에서 동작한다. RA와 RV는 각 단말에 탑재되어 RUI 관리자와 연동하여 단 말의 뷰를 공유하거나 애플리케이션 UI를 공유하는 기능을 지원한다. 또한, UI에서 분리된 로직과 의 통신을 위하여 메시지 통신 채널을 구성하고 UI-로직간의 명령어 전달과 수행 결과를 통보받 는 흐름을 지원한다.

2) 스케일러블 UI 지원 기능

스케일러블 UI 지원 기능은 원본 콘텐츠를 스마트 단말의 특성에 맞게 스케일러블하게 UI를 변 환하여 전달하여 렌더링하는 기능을 제공한다. 아래 그림은 스케일러블 UI 지원을 위한 컴포넌트 간의 메시지 흐름 및 동작 시퀀스를 보여준다.

그림 152 스케일러블 UI 동작 시퀀스

원격 단말 뷰 공유 기능은 현재의 뷰를 다른 단말로 전송하거나 다른 단말의 뷰를 당겨서 공유 하거나 전환을 통하여 뷰를 이동하는 기능을 제공한다. 원격 단말 뷰 공유 기능은 자신의 뷰를 다 른 단말로 전송하는 Push 방식과 다른 단말의 뷰를 가져오는 Pull 방식의 2가지로 구분한다. 2차 년도 원격 단말 뷰 공유 기능에서는 단말 뷰 공유시 다른 단말 뷰와의 통일성과 뷰에서 발생하는 이벤트에 대한 동기화 처리를 위하여 동일한 뷰를 고려한다.

3) 원격 뷰 공유 기능을 위한 PUSH 기능

아래 그림은 단말의 뷰를 원격 단말로 공유하기 위한 컴포넌트간의 메시지 흐름 및 동작 시퀀 스를 보여준다.

그림 153 단말 뷰 원격 공유를 위한 Push 시퀀스

4) 원격 뷰 공유 기능을 위한 PULL 기능

아래 그림은 원격 단말의 뷰를 자신의 단말의 뷰로 가져하기 위한 컴포넌트간의 메시지 흐름 및 동작 시퀀스를 보여준다.

그림 154 원격 뷰 공유를 위한 Pull 시퀀스

5) UI-서비스 로직 연동 기능

UI-서비스 로직 연동 기능은 원격의 UI에서 발생한 이벤트를 통신 채널을 통해 서비스 로직에 전달하여 처리하는 기능을 제공한다. 또한, 다양한 입출력에 대하여 정규화된 매핑 테이블을 정의 하여 동일한 효과를 제공하는 이종 IO 추상화 기능을 포함한다. 아래 그림은 UI-서비스 로직 연 동 기능을 위한 RUI 프레임워크의 동작 구조를 보여준다.

그림 155 UI-서비스 로직 연동 인터페이스

UI-서비스 로직 연동 기능은 UI가 실행중인 제어 단말에서 발생한 제어 이벤트를 서비스 로직 이 구동중인 타겟 디바이스로 전달하여 수행한 결과를 다시 제어 단말의 뷰에 반영하는 과정으로 동작하며, 제어 단말에서는 UI-IO 매핑 테이블을 이용하여 UI에서 발생하는 이벤트에 대하여 타 겟 단말의 IO 이벤트로 변환하여 전달한다.

6) IO 장치 관리 기술

IO 장치 관리(IODM: IO Device Management) 기능은 홈네트워크 내의 모든 스마트 장치를 검 색하여 시스템 정보, 입출력 기능 정보 및 설치된 애플리케이션 정보를 수집하여 관리한다. 아래 그림과 같이 IODM 관리자는 홈서버나 그 기능을 담당하는 셋톱박스에 설치되어 수행된다.

그림 156 IO 장치 정보 관리 개념도

IODM 관리자는 협업 미들웨어 및 Scalable RUI 프레임워크의 시스템 요소들과 연동 인터페이 스를 제공하고 있으며, 각 장치의 IO 관련 정보를 수집하기 위하여 IODM 에이전트가 각 단말에 동작하게 된다. IODM 관리자는 IODM 에이전트와 UPnP를 통해 연동되고 SOAP을 통해 각 단말 의 시스템정보, 입출력 기능 정보 등의 정적 정보와 현재 CPU 점유율 등의 동적 정보를 주기적

으로 수집하게 된다. RUI 프레임워크를 위해서는 주로 IO 정보와 애플리케이션 정보가 사용되며 RUI 관리자와 RUI 앱과 IO 기능 정보를 수집하기 위한 인터페이스를 갖고 있다. RUI 앱은 개발 하는 과정에서 고유 식별자를 할당 받으며 이를 통해 관련된 RUI를 검색할 수 있다. IO 단말 정 보 관리자가 제공하는 RUI 프레임워크 관련 정보는 그래픽 해상도, 비디오 코덱, 스트리밍 프로 토콜, 물리적 스크린의 크기, 단말 회전 센서 유무, 터치 스크린 기능, 모션 기능 그리고 현재 수 행 중인 애플리케이션의 프로파일 등이다.

아래 그림은 홈네트워크에서 스마트 디바이스를 검색하고 관리하며 정보를 제공하는 IODM 관 리자의 소프트웨어 구조도를 보여준다.

그림 157 IO 단말 관리자의 소프트웨어 구조도 IODM 관리자는 다음과 같은 기능을 제공한다.

Ÿ IO Device 자동 탐색 / 검색

Ÿ IO Device Static/Dynamic Profile 관리 Ÿ IO Device Interface API

Ÿ Device Profile Repository 관리 Ÿ IODM Manager GUI

IO Device 자동 탐색은 UPnP의 SSDP(Simple Service Discovery Protocol)를 이용하여, 스 마트 디바이스가 홈네트워크에 접속하면, IODM Agent에 설치된 Device 자동 탐색 서비스를 통 해 자신의 존재를 알리기 위해 HTTP 기반의 발견 프로토콜인 SSDP(Simple Service Discovery Protocol)를 사용하여 멀티캐스트를 전송하면, IODM Manager에 설치된 IO Device 자동 탐색 서비스를 통해 디바이스 자동 탐색을 실시한다. 자동 탐색에 사용되는 멀티캐스트 요청은 UPnP 에 정의되어 있는 239.255.255.250:1900(HTTPU) 주소를 사용한다. IO Device 자동 탐색 기능 은 IODM Agent의 Device 자동 탐색 기능과 동일한 메커니즘을 갖는다. 다만 차이점은 IODM Manager가 설치되는 디바이스는 UPnP 스팩에서 명시하고 있는 제어 포인트(Control Point) 역

IO Device 자동 탐색은 UPnP의 SSDP(Simple Service Discovery Protocol)를 이용하여, 스 마트 디바이스가 홈네트워크에 접속하면, IODM Agent에 설치된 Device 자동 탐색 서비스를 통 해 자신의 존재를 알리기 위해 HTTP 기반의 발견 프로토콜인 SSDP(Simple Service Discovery Protocol)를 사용하여 멀티캐스트를 전송하면, IODM Manager에 설치된 IO Device 자동 탐색 서비스를 통해 디바이스 자동 탐색을 실시한다. 자동 탐색에 사용되는 멀티캐스트 요청은 UPnP 에 정의되어 있는 239.255.255.250:1900(HTTPU) 주소를 사용한다. IO Device 자동 탐색 기능 은 IODM Agent의 Device 자동 탐색 기능과 동일한 메커니즘을 갖는다. 다만 차이점은 IODM Manager가 설치되는 디바이스는 UPnP 스팩에서 명시하고 있는 제어 포인트(Control Point) 역

문서에서 R&D연구결과보고서 (페이지 132-147)