1. Future Web and
WoT(Web of Things)
Jonghong Jeon
ETRI, PEC
Email: hollobit@etri.re.kr
Blog: http://mobile2.tistory.com
http://twitter.com/hollobit
http://www.etri.re.kr
2. In The Beginning .....
World Wide Web (Tim Berners-Lee, 1989)
universe of network-accessible information
anyone, anywhere, anytime
Client to server interactions
2
4. Web Page vs. Web Application
Web Page(Site)
HTML로 표현된 웹 문서(또는 페이지들을 제공)
Web Application
특정한 기능을 수행하도록 설계된 프로그램
4
5. Evolution of World Wide Web
1단계 (1989~1999) : 웹사이트의 시대, HTML과 WAP
HTML, URL, HTTP 라는 세 가지 기술에 기초한 웹 기술이 제안되고, 보다
나은 인간 중심의 정보처리 및 지식공유 등을 목표로 하는 단계
2단계 (2000~2004) : XML과 웹서비스, 시맨틱 웹
XML(eXtensible Markup Language)에 기반하며 인간 중심의 정보 처리뿐 아
니라 다양한 디바이스와 서비스, 멀티미디어를 연결하는 것을 목표로 하는
단계
3단계 (2005~2009) : 웹 2.0, 웹 플랫폼 시대의 성장
구글, 아마존, 위키피디아 등의 성공과 함께 웹 산업을 제2의 전성기로 이
끌며 다양한 신규 서비스가 등장할 수 있는 기반을 마련
4단계 (2010~현재) : 웹 앱의 시대, 모바일과 N-Screen 시대
스마트 폰 및 태블릿 등 다양한 모바일 기기들을 대상으로 HTML5와 Web
API를 통해 한 단계 진화된 웹 응용 환경을 제공하며, 위치정보 및 소셜 정
보 등을 결합하는 통합 응용 플랫폼으로서 웹이 자리잡아 가는 단계
5
7. HTML5 & Web App Technology Timeline
2010
2011 2012
HTTP2
HTTP
HTML5 Working Draft
Canavs
Web form
W3C
DOM1
Specs.
CSS1
Javascript
DOM2
CSS2
AppCache
Web Workers
Geolocation
Audio/Video
Web
App.
7
2013
FileAPI
WebGL
WebFont
DOM4
DOM3
CSS3
AJAX
hollobit@etri.re.kr
XHR2
8. HTML5
HTML5로 통칭되는 요소는 HTML5 뿐 아니라 CSS3, 웹 어플리케
이션을 위한 JavaScript API 확장을 포함한 것
통칭되는 “HTML5”
HTML5
(Hypertext Markup Language 5.0)
콘텐츠 내용과 형식을 표현
문서구조의 상세화
멀티미디어
폼과 이벤트 등
문서 구조의 의미를 명확히 하여
디자인과 프로그램의 독립성을 확보
8
CSS3
JavaScript
(Cascading Style Sheet 3.0)
각종 API를 통해
기능을 표현
콘텐츠 표현 방법을 정의
표현 기능 모듈화
웹 폰트
서로 다른 다양한 브라우저 상에서
일관된 표현 기능 제공, 효과적이고 편
리한 표현 방식의 변경
Web Storage
Web Worker
Web Socket
Geolocation API
풍부한 기능과 자원을 제어할 수
있는 로컬 어플리케이션
24. [Case 1] JS based approach
Espruino: JavaScript for Things
Tessel : a microcontroller
that runs JavaScript.
24
25. [Case 1] JS based approach
WigWag & DeviceJS
25
26. [Case 2] Framework based approach
heimcontrol.js
Raspberry PI and Arduino using Node.js,
MongoDB, HTML5 and Websockets.
WebIOPi
Internet of Things framework for the
Raspberry Pi
26
27. [Case 3] Cloud based approach
An Active Digital Identity™ on the Web for every thing.
27
28. [Case 4] Mashup & Marketplace
Compose Project
28
The Web of Things Application Architecture
29. [Req1] Concept of a Thing
(Web of) Thing
Web으로 접근 가능한 Thing (Virtual/Physical)
• Thing은 핵심요소(ID, Resource, 기능, context, I/O, 인터페이스, intelligence)를
가지며 단일 또는 집합이 될 수 있음
• Thing의 모든 것들은 Web Resource
표준 Web Access Method와 프로토콜 사용
•
•
•
•
HTTP, XHR, Web Socket, Web RTC …
Web Markup & Style (HTML5, CSS3), XML, RSS, DOM …
Identification Scheme (URI/IRI, URN, URL…)
Javascript, Web APIs …
(Web of) Every Thing
WoT 대상은 기능이 아닌 Thing 자체(실제, 가상)
• Virtual Thing은 Thing의 기능을 대표/중재하는 단일/집합 대상
Thing들을 표준 웹 규약 기반으로 복합적으로 제어하는 것이 WoT
• Thing의 레벨 구분과 협업 패턴 필요
29
32. [Req4] Pattern of Multi-screens
Source: http://precious-forever.com/2011/05/26/patterns-for-multiscreen-strategies/
32
33. Remained Issues
Remote Access of Web Resources
How can we access through the firewalls, NATs..
Remote Device APIs, System level APIs
RESTful access of Device capabilities
Security & Privacy
Other big issues
Identification & Discovery (Services, Resources, Things,
Capability..)
Management, Caching, Processing, Protocols, Collaboration, ….
Web technologies for small devices (accessory, sensors…)
33