2. • Discovery And Launch의 약 자 로 2nd screen device가 1st screen device를 발 견 하 고
(discovery), application을 실 행 (Launch)하 기 위 해 Netflix가 주 도 적 으 로 개 발 한 개 방 형 N-
Screen 프 로 토 콜
• 스 마 트 폰 이 나 태 블 릿 등 에 서 TV나 STB의 앱 을 실 행 할 수 있 고 동 영 상 을 재 생 할 수 있 게 하
는 기 술
• 1st Screen – TV, Blu-ray, STB 같 은 유 사 기 기
• 2nd Screen – 스 마 트 폰 , 태 블 릿 과 같 은 유 사 기 기
• DIAL Server – 일 반 적 으 로 1st Screen device를 말 하 며 , DIAL protocol의 server측 기 능 을
수 행 하 는 device.
• DIAL Client – 일 반 적 으 로 2nd Screen device를 말 하 며 , DIAL server에 존 재 하 는 application
을 발 견 하 고 , 실 행 시 키 는 device.
3. • For example
◦ Mobile app에 서 비 디 오 를 발 견 하 여 , TV로 보 고 싶 을 때
• Without DIAL
1. RCU로 TV app menu를 실 행 .
2. TV app로 이 동
3. TV app를 실 행 .
4. TV app의 pairing screen 메 뉴 로 이 동
5. Phone의 Mobile app를 실 행 시 켜 pairing screen으 로 이 동 .
6. Mobile app의 pin code를 입 력 .
7. Mobile app의 Play on TV 버 튼 을 누 른 다 .
• With DIAL
1. Mobile app 실 행 시 킨 다 .
2. Mobile app의 Play on TV 버 튼 을 누 른 다 .
4. • 1st Screen Service
(a) iPhone에 있 는 Netflix App는 TV의 DIAL service를 발 견 .
(b) iPhone에 있 는 Netflix App는 DIAL protocol을 사 용 하 여 TV에 있 는 Netflix app를 실 행 .
(c) iPhone에 있 는 Netflix App는 TV에 있 는 Netflix app를 발 견 .
(d) iPhone에 있 는 Netflix App와 TV에 있 는 Netflix app는 영 화 를 보 여 주 기 위 해 communication한 다 .
위 과 정 에 서 (a), (b)는 DIAL Spec에 의 해 정 의 되 고 , (c), (d)는 Netflix specific한 기 능
• 2nd Screen Service
(a) Tablet에 있 는 YouTube App는 TV의 DIAL service를 발 견 .
(b) Tablet 에 있 는 YouTube App는 DIAL protocol을 사 용 하 여 TV에 있 는 YouTube app를 실 행 하 고 ,
이 때 tablet의 YouTube App의 IP/Port를 전 달 한 다 .
(c) TV에 있 는 YouTube app는 video를 보 여 주 기 위 해 tablet의 YouTube app와 통 신 하 고 , 완 료 후 TV UI 복 귀 한 다 .
위 과 정 에 서 (a), (b)는 DIAL Spec에 의 해 정 의 되 고 , (c)는 YouTube specific한 기 능 이 다 .
• Cloud Service
(a) Phone의 WebcamX App는 TV의 DIAL service를 발 견 한 다 .
(b) Phone의 WebcamX App는 TV에 있 는 특 정 URL의 HTML5 browser application를 실 행 하 기 위 해 DIAL protocol을
사 용 한 다 .
(c) Phone의 WebcamX App는 cloud based WebcamX server를 통 해 TV의 WebcamX App와 통 신 한 다 .
위 과 정 에 서 (a), (b)는 DIAL Spec에 의 해 정 의 되 고 , (c)는 WebcamX specific한 기 능 이 다 .
5. • DIAL protocol은 두 개 의 components로 구 성 , 하 나 는 DIAL Service Discovery이 고 다 른
하 나 는 DIAL REST Service .
• DIAL Service Discovery
◦ DIAL Client가 자 신 의 로 컬 네 트 워 크 상 에 존 재 하 는 DIAL Server를 검 색 하 여 Server에
있 는 DIAL REST Service에 접 근 할 수 있 도 록 지 원 한 다 . DIAL Service Discovery는 UPnP
specification에 정 의 된 SSDP protocol의 Search Target 기 능 과 UPnP device
description을 위 해 필 요 한 HTTP요 청 에 따 른 추 가 적 인 헤 더 를 이 용 해 구 현
• DIAL REST Service
◦ DIAL Client가 쿼 리 를 던 지 거 나 DIAL Server의 application을 실 행 하 거 나 중 지 시 킬 수
있 는 기 능 을 제 공 한 다 . DIAL REST Service는 HTTP를 이 용 한 다 .
☞REST(Representational State Transfer)는 웹 프 로 토 콜 (HTTP)을 활 용 하 여 Resource중 심 으 로
연 동 인 터 페 이 스 구 조 를 제 안 한 것 으 로 WWW와 같 은 분 산 하 이 퍼 미 디 어 시 스 템 인 터 페 이 스
SW아 키 텍 처 .
HTTP프 로 토 콜 을 사 용 해 상 이 한 언 어 , 플 랫 폼 , SW는 물 론 모 바 일 디 바 이 스 와 도 종 속 성 없 이
Network상 의 제 품 간 정 보 연 계 가 가 능
6. DIAL Service Discovery는 UPnP의 SSDP(Simple Service Discovery Protocol)버 전
1.1와 HTTP을 기 반 으 로 한 다
7. • M-SEARCH request
DIAL server을 발 견 하 고 자 하 는 DIAL client는 UPnP Spec 1.3.2에 정 의 된 M-SEARCH 라
는 요 청 을 보 냄 . 정 보 는 UDP port 1900번 을 통 해 IPv4형 태 의 멀 티 캐 스 트 주 소 인
239.255.255.250으 로 보 내 진 다 .
다 음 의 값 이 정 의 된 Search Target(ST) header정 보 가 포 함
urn : dial-multiscreen-org:service:dial:1
• M-SEARCH response
ST header를 포 함 한 M-SEARCH요 청 을 받 은 SSDP/UPnP 서 버 는 UPnP Spec 1.3.3에 정
의 된 바 와 같 이 응 답 을 해 야 함 . 응 답 정 보 에 는 루 트 기 기 의 UPnP 디 스 크 립 를 위 한 절 대
HTTP Url주 소 를 포 함 한 location header가 포 함 된 다 .
Url의 호 스 트 부 분 은 IPv4주 소 로 변 환 되 거 나 IPv4주 소 형 태 이 어 야 하 며 응 답 정 보 에 포
함 되 는 ST의 header에 는 M-SEARCH부 분 에 서 정 의 된 식 별 자 가 포 함 되 어 야 함
8. • Device description request
M-SEARCH response를 수 신 후 DIAL client는 M-SEARCH response의 LOCATION
header에 있 는 URL로 HTTP GET을 요 청 한 다 .
• Device description response
Device description을 위 한 유 효 한 HTTP GET을 수 신 후 , DIAL Server는 UPnP section2
에 정 의 된 UPnP device description을 포 함 한 HTTP response를 보 낸 다 .
이 때 HTTP response는 절 대 HTTP URL인 Application-URL 필 드 를 포 함 한 다 .
이 URL은 DIAL REST Service를 구 분 하 여 DIAL REST Service URL의 역 할 을 한 다 .
Response를 받 은 DIAL Client는 DIAL Rest Service에 접 근 하 기 위 해 Application-URL를
이 용 한 다 .
9. • DIAL REST Service는 URL로 구 분 되 어 지 는 특 정 application(e.g. Netflix, YouTube..)을 동
작 시 키 기 위 한 것 으 로 Application Resource URL에 대 응 되 는 HTTP request을 보 내 어 동
작 한 다 .
• Application Resource URL은 DIAL REST Service URL + / + Application Name 으 로 구 성
된 다 .
• Application Name은 application provider가 정 의 하 고 , Application Name은 DIAL
Registry에 등 록 되 어 야 한 다 .
10. • Google Cast는 Google이 만 든 DIAL 기 반 의 screen-sharing 기 술 .
Device OS/Platform API
Sender Android, iOS, Chrome OS, Mac OS, Windows Android API, iOS API, Chrome API
Receiver Scaled-down Chrome browser(Chrome OS) Receiver API for web application