WebRTC

위키백과, 우리 모두의 백과사전.
둘러보기로 가기 검색하러 가기
WebRTC
WebRTC Logo.svg
원저자Justin Uberti
Peter Thatcher
발표일2011년 (8년 전)(2011)
안정화 버전
1.0[1] / 2018년 5월 4일 (18달 전)(2018-05-04)
저장소webrtc.googlesource.com
프로그래밍 언어C++,[2] JavaScript
라이선스BSD 라이선스
웹사이트webrtc.org

WebRTC (Web Real-Time Communication)는 웹 브라우저 간에 플러그인의 도움 없이 서로 통신할 수 있도록 설계된 API이다. W3C에서 제시된 초안이며, 음성 통화, 영상 통화, P2P 파일 공유 등으로 활용될 수 있다.

역사[편집]

웹 브라우저 기반의 통신 방식인 WebRTC는 구글오픈 소스화한 프로젝트에서 기원하였다.[3] 그 뒤로 국제 인터넷 표준화 기구[4]프로토콜 표준화 작업을, W3C가 API 정의를 진행하였다.[5]

WebRTC의 W3C 초안[6] 작업은 진행 중이며 크롬파이어폭스 브라우저에서 먼저 구현되고 있다. API는 WHATWG[7]에릭슨.[8]의 작업에 기반하여 정의되었다.

개요[편집]

설계[편집]

WebRTC의 주요 구성 요소는 여러 자바스크립트 API를 포함하고 있다:

  • getUserMedia: 오디오와 비디오 미디어를 가져온다. (예: 장치의 카메라와 마이크로폰에 접근하여)[9]
  • RTCPeerConnection: 피어 간 오디오, 비디오 통신을 활성화한다. 신호 처리, 코덱 관리, P2P 통신, 보안, 대역폭 관리를 수행한다.[10]
  • RTCDataChannel: 피어 간 양방향 임의 데이터 통신을 허용한다. 웹소켓과 동일한 API를 사용하며 매우 낮은 레이턴시를 보인다.[11]

또, WebRTC API는 통계 함수를 포함한다:

  • getStats: 웹 애플리케이션에 WebRTC 세션에 관한 통계 집합의 검색을 허용한다. 이 통계 데이터는 별도의 W3C 문서에 기술되어 있다.[12]

지원[편집]

WebRTC는 다음의 브라우저에서 지원된다:

2013년 10월 마지막 기능 릴리스 이전의 인터넷 익스플로러에서는 지원되지 않으나,[18] 서드파티 플러그인을 사용하여 인터넷 익스플로러와 macOS용 사파리에서 WebRTC 지원을 추가할 수 있다.[19][20] WWDC 2017에서, 애플은 사파리 11에서 WebRTC를 지원할 것이라고 발표했으며,[15] 사파리 테크놀로지 프리뷰 릴리스 32에서 사용 가능하게 되었다.[21]

참조[편집]

  1. “WebRTC 1.0: Real-time Communication Between Browsers”. 《World Wide Web Consortium》. 2018년 9월 27일. 2019년 3월 25일에 확인함. 
  2. “Src/webrtc - Git at Google”. 
  3. “Google release of WebRTC source code from Harald Alvestrand on 2011-05-31 (public-webrtc@w3.org from May 2011)”. Lists.w3.org. 2012년 9월 12일에 확인함. 
  4. http://tools.ietf.org/wg/rtcweb/charters?item=charter-rtcweb-2011-05-03.txt
  5. “WebRTC 1.0: Real-time Communication Between Browsers”. W3.org. 2012년 9월 12일에 확인함. 
  6. “WebRTC 1.0: Real-time Communication Between Browsers”. Dev.w3.org. 2012년 9월 12일에 확인함. 
  7. “Introduction — HTML Standard”. Whatwg.org. 2012년 9월 12일에 확인함. 
  8. “Beyond HTML5: Peer-to-Peer Conversational Video | Ericsson Labs”. Labs.ericsson.com. 2012년 10월 29일에 원본 문서에서 보존된 문서. 2012년 9월 12일에 확인함. 
  9. “Media Capture and Streams: getUserMedia”. W3C. 2013년 9월 3일. 2014년 1월 15일에 확인함. 
  10. “WebRTC: RTCPeerConnection Interface”. W3C. 2013년 9월 10일. 2014년 1월 15일에 확인함. 
  11. “WebRTC: RTCDataChannel”. W3C. 2013년 9월 10일. 2014년 1월 15일에 확인함. 
  12. “Identifiers for WebRTC's Statistics API”. W3C. 2014년 9월 29일. 
  13. “ORTC API is now available in Microsoft Edge”. Microsoft. 2015년 9월 18일. 
  14. Firefox Notes - Desktop. Mozilla.org (2013-06-25). Retrieved on 2014-04-11.
  15. “Safari 11.0”. Apple Inc. 2017년 6월 6일에 확인함. 
  16. Opera News. blogs.opera.com (2013-11-19). Retrieved on 2015-09-17.
  17. Firefox Notes - Desktop. Mozilla.org (2013-09-17). Retrieved on 2014-08-04.
  18. “Internet Explorer Web Platform Status and Roadmap”. Microsoft. 2015년 5월 4일에 원본 문서에서 보존된 문서. 2014년 9월 7일에 확인함. 
  19. “Priologic Releases First Open Source WebRTC Plugin for Internet Explorer”. 2014년 6월 10일. 2014년 6월 26일에 원본 문서에서 보존된 문서. 
  20. Wilcox, Charles (2014년 5월 12일). “Temasys Plugin Supports webRTC in Internet Explorer and Apple Safari, on Desktops” (보도 자료). Temasys Communications Pte Ltd. PRWeb. 
  21. “Safari Technology Preview Release Notes”. 2017년 6월 12일에 확인함. 

외부 링크[편집]