webrtc in 2014

45
WebRTC in 2014 - 다시 보는 WebRTC, 미리 보는 WebRTC 이원제 @Veckon CTO @GDG Seoul Organizer plus.google.com/+nurinamu

Upload: -

Post on 18-Dec-2014

2.156 views

Category:

Technology


4 download

DESCRIPTION

Review the WebRTC issues & news and forecast the future WebRTC industry. This slide is used in GDG Seoul Monthly Meetup at 22th Jan, 2014.

TRANSCRIPT

Page 1: WebRTC in 2014

WebRTC in 2014- 다시 보는 WebRTC, 미리 보는 WebRTC

이원제@Veckon CTO

@GDG Seoul Organizerplus.google.com/+nurinamu

Page 2: WebRTC in 2014

Presenter

Page 3: WebRTC in 2014

Agenda

WebRTC?WebRTC API

Issues in WebRTC Groups

WebRTC in Industry

WebRTC in 2014

Page 4: WebRTC in 2014

WebRTC

Page 5: WebRTC in 2014
Page 6: WebRTC in 2014

WebRTC

P2P

Page 7: WebRTC in 2014
Page 8: WebRTC in 2014

WebRTC

Page 9: WebRTC in 2014

WebRTC

Demo Site : http://apprtc.appspot.com

Page 10: WebRTC in 2014

Agenda

WebRTC?

WebRTC APIIssues in WebRTC Groups

WebRTC in Industry

WebRTC in 2014

Page 11: WebRTC in 2014

WebRTC API

PeerConnection APIWebRTC의 Core API기능 개선된 내용- Signal State가 추가됨

- 구현 주체 쪽에서 처리하던 시퀀스 처리 루틴이 간소화됨.

- Multi-Stream을 지원

- 각 Stream이 ID로 관리됨.

- setRemoteDescription이 내부적으로 startIce()를 호출하도록 변경.

- Connection State가 구현 완료됨. (Chrome)

- 연결 상태에 대한 확인을 위한 Polling 구조를 삭제할 수 있게 됨.

Page 12: WebRTC in 2014

WebRTC API

DataChannelPeer 간의 Data를 주고 받을 수 있는 Tunnel apiPeerConnection을 통해 생성됨.Datatype - string,blob,ArrayBuffer,ArrayBufferView

Chrome : 26+, Firefox : 22+

Page 13: WebRTC in 2014

WebRTC API

DTMFSenderDTMF(Dial-Tone Multi Frequency) Generator를 내장함.DTMF를 AudioStream을 통해 전송가능.

Demo - http://webrtc.googlecode.com/svn/trunk/samples/js/demos/html/dtmf1.html

Page 14: WebRTC in 2014

Agenda

WebRTC?

WebRTC API

Issues in WebRTC GroupsWebRTC in Industry

WebRTC in 2014

Page 15: WebRTC in 2014

● Multiple User Connection.

● TURN Connection

● Codec issue.

● Recording.

● WebRTC <-> SIP.

● DataChannel.

● Screen / Desktop Sharing.

● WebRTC for Mobile.

Issues in WebRTC groups.

Page 16: WebRTC in 2014

Multiple User ConnectionPeerConnection은 기본적으로 1:1 연결만 지원.

Multi Connection을 위해서는 Client에서 직접 구현해야 함.

Page 17: WebRTC in 2014

Multiple User ConnectionMesh 형태의 연결구조PeerConnection을 이용한 가능 보편적인 연결 방식- 장점

- 서버가 없는 완전한 P2P구조

- 빠른 속도

- 단점- Client 장비에 큰 부하

- 회선에 따른 성능 Dependency가 큼

- 소규모 Video Conferencing에 적합함.

Page 18: WebRTC in 2014

Multiple User ConnectionMultipoint Control Unit을 이용한 연결 구조PeerConnection의 MultiStream이 지원되면서 가능해진 방식- 장점

- Client 부하가 적음.

- 대규모 연결 가능.

- 균일한 속도 보장

- 단점- MCU 부하/비용

- Delay 발생

- MCU가 죽으면 X

- Broadcasting 방식의 Conferencing에 적합함.

Page 19: WebRTC in 2014

Multiple User Connection

Cluster Mesh 방식의 연결 구조- Source MediaStream을 Forward하는 방식.- 장점

- 서버 비용이 없다.

- 빠른 속도.

- 단점- Parent의 Bandwidth에 Dependency가 큼.

- 불안한 연결

- 높은 복잡도

- 적은 부하로 대규모 연결이 가능

Page 20: WebRTC in 2014

TURN Connection추천 TURN Server - 13년 초까지만 해도 restund를 많이 사용하였지만 현재는 rfc5766-turn-server

TURN 서버 연결 성능을 WorldWide에서 균일하게 처리하기 위한 방법 - AWS EC2 + Route 53 GEO DNS

TURN Connection의 Authentication 처리 - Account Server와 TURN서버간에 정보 공유 필요.

- rfc5766-turn-sver에서 file, mysql, postgress, Redis를 호환함.

Client 연결이 STUN인지 TURN인지 구분에 대한 요구가 큼.- 아직 특별한 대응은 없지만 Chrome팀에서는 ICE에 해당 정보를 업데이트하도록 노력하겠다고 함.

Page 21: WebRTC in 2014

Codec Issue

VS

Loyalty

호환성

주관

무료

웹브라우저

Google

유료(Cisco에서 무료 전환)

거의 모든 동영상 플랫폼

MPEG LA

Page 22: WebRTC in 2014

RecordingBrowser상에서의 Stream 저장에 대한 요구는 계속됨.현재로서는 Stream을 Snapshot으로 연결해 WebM으로 저장하는 방식을 사용. 하지만 음성을 저장하지 못해서 완전한 녹화 기능이 아님. 단, Native Library로 구현된 일부 Client들은 Stream저장 기능을 사용.

MediaStream Recording API가 W3C에 등록되었지만 아직 구현된 Browser가 없음.Draft version : 2013 2월

- http://www.w3.org/TR/mediastream-recording/

Working version : 2013 11월

- https://dvcs.w3.org/hg/dap/raw-file/tip/media-stream-capture/MediaRecorder.html

Page 23: WebRTC in 2014

WebRTC + SIPWebRTC와 기존의 VOIP간 연결을 위해 SIP Router API에 대한 요구가 큼.

일부 개발자들이 직접 구현한 Open Source Project들이 생김.- sipJS, webrtc2sip, sipML5 Demo service : http://lwork.hk:8086/

Page 24: WebRTC in 2014

Screen / Desktop Sharing.getUserMedia - screen option. - Chrome에서만 지원되고 있으며 M30 이후부터 Experimental로 지원하고 있음. - Chrome M33 milestone에 default 전환 계획이 잡혀있음.

- https://code.google.com/p/webrtc/issues/detail?id=1757

- Demo - https://html5-demos.appspot.com/static/getusermedia/screenshare.html

Page 25: WebRTC in 2014

DataChannel Outgoing limit 문제

- SDP의 outgoing bandwidth 설정(‘b=*’)을 변경해서 사용함.

Cross Browsing 문제- Chrome M29이상, Firefox 24이상에서 inter-op 지원.

SCTP 지원- Chrome M31이상에서 지원.

Page 26: WebRTC in 2014

WebRTC for mobileAndroid- WebRTC Native Code Package 를 통해 구현 가능.

- http://www.webrtc.org/reference/getting-started

- 현재 Windows, Linux, Android에서 사용 가능.

- Browser가 아닌 Application에서도 WebRTC 기능 사용 가능.

Tizen- V2.2에 getUserMedia가 구현됨.

- V3.0+ 에 PeerConnection이 구현될 예정.

iOS - Apple- 현재 WebRTC에 대한 구현 상황에 대해 어떤 정보도 나와 있는 것이 없음.

Page 27: WebRTC in 2014
Page 28: WebRTC in 2014

WebRTC for MobileAndroid 4.4 Kitkat 부터 WebView가 Chromium을 기반으로 만들어짐.

WebRTC와 각종 HTML5 지원이 강력해짐.

WebView의 user-agent 값.

Mozilla/5.0 (Linux; Android 4.4; Nexus 4 Build/KRT16H) AppleWebKit/537.36

(KHTML, like Gecko) Version/4.0 Chrome/30.0.0.0 Mobile Safari/537.36

Page 29: WebRTC in 2014

Agenda

WebRTC?

WebRTC API

Issues in WebRTC Groups

WebRTC in IndustryWebRTC in 2014

Page 30: WebRTC in 2014

WebRTC in IndustryTwelephone

- http://twelephone.com

- 트위터 계정을 이용한 영상통화 서비스

Bistri- http://bistri.com

- 통합 SNS서비스기반 영상통화 서비스 & WebRTC Platform API 서비스

TokBox - http://tokbox.com

- Video Communication Platform 서비스 : 기존에 Flash기반의 서비스 제공에서 WebRTC기반으로 스핀오프 중.

- http://tokbox.com/about-webrtc/infographic

Page 31: WebRTC in 2014

WebRTC 업체

Veckon - http://veckon.com

- One Click 영상 통화 서비스.

- 개인 URL 서비스 제공.

- B2B: 성형외과 대상으로 원격 영상 상담 & 환자 기록 관리 시스템 제공.

Page 32: WebRTC in 2014

Agenda

WebRTC?

WebRTC API

Issues in WebRTC Groups

WebRTC in Industry

WebRTC in 2014

Page 33: WebRTC in 2014

Remote Office / Co-working Service.Video Converencing.

Page 34: WebRTC in 2014

Tele Education.

Page 35: WebRTC in 2014
Page 36: WebRTC in 2014

Health Care / Telemedicine

Page 37: WebRTC in 2014

Customer Service

Page 38: WebRTC in 2014

WebRTC in 2014Labtop, Tablet, SmartPhone 보급률 증가

- 영상 입력장치 보급률 증가로 화상 통신의 수요 증가 기대

Cisco - Desktop Videoconferencing 사용자가 비약적으로 증가할 것으로 예상

Page 39: WebRTC in 2014

WebRTC in 2014Labtop, Tablet, SmartPhone 보급률 증가

- 영상 입력장치 보급률 증가로 화상 통신의 수요 증가 기대

Page 40: WebRTC in 2014

=== Video Conferencing ?

Page 41: WebRTC in 2014

WebRTC in 2014

- http://peercdn.com

- Yahoo에서 인수.

- 같은 위치에 접근한 Peer끼리 Resource를 공유하도록해 서버의 부하를 분산시키는 서비스.

Page 42: WebRTC in 2014

WebRTC in 2014

Wearable + M2MGoogle의 Nest인수($3.2B)는 IOT/M2M 시장의 선점을 위한 기술 인수.WebRTC는 P2P의 표준으로써 M2M의 기반이 될 가능성이 매우 크기 때문에 주목 받고 있음.

Page 43: WebRTC in 2014

Reference

WebRTC API : http://www.w3.org/TR/webrtc/

SDP Spec : http://www.ietf.org/rfc/rfc2327.txt

WebRTC Signalling : http://www.html5rocks.com/en/tutorials/webrtc/infrastructure/

WebRTC Tutorial : http://nurinamu.tistory.com/601

WebRTC Stats : http://webrtcstats.com/webrtc-forecasts-upgraded-mobile-support-accelerating/

M2M w/ WebRTC : http://bloggeek.me/m2m-network-architecture/

Page 44: WebRTC in 2014

CU-RTC-Web 은 과연 어떤 형태로?

Page 45: WebRTC in 2014

감사합니다.

이원제 (LeeWonJae)[email protected]

google+ : +nurinamutwitter : @nurinamu

facebook : nurinamu