Getting Started with WebRTC 정리 01

This post is a summary of the book Rob Manson’s Getting Started with WebRTC


An Introduction to Web-based Real-Time Communication

WebRTC 소개

1990년도 초반, World Wide Web(WWW)이 처음 만들어 졌을 때, HREF 기반 하이퍼링크를 사용한 page 중심의 모델 위에 세워졌다.
이러한 웹의 초기 모델은 브라우저가 새로운 정보를 가져오기 위해서 하나의 페이지에서 다른 페이지로 이동해야했다.

2000년 즈음 새로운 웹 브라우징 방식을 개발하기 시작했고, 00년도 중반에 XMLHttpRequest(XHR) API가 표준화되었다.
이 새로운 XHR API는 개발자들이 다른 페이지로 이동하면서 새로운 컨텐츠를 가져오거나 업데이트하지 않아도 되는 웹 애플리케이션을 만들 수 있게 하였다.

이제 새롭고 전혀 다른 변화가 웹에서 일어나고 있다.
이 변화를 통해 개별 웹 브라우저들이 중계 서버를 통하지 않고 데이터를 상대방에게 직접 보낼 수 있게된다.
이는 Web Real-Time Communications Working Group이 표준화한 새로운 API들 위에서 만들어지는 새로운 peer-to-peer communication 형태이다.

WebRTC 사용

실시간 웹 (The real-time web)을 통해 다른 웹 브라우저들로 동적인 연결과 웹에서 사용가능한 디바이스를 빠르고 쉽게 설정할 수 있다.
이는 텍스트 기반 채팅, 파일 공유, 스크린 공유, 게이밍, 비디오 채팅 등과 같은 다양한 종류의 peer-to-peer 통신의 가능성을 열어준다.

Direct peer-to-peer 커넥션은 낮은 latency를 제공한다.

Secure peer-to-peer 커넥션을 통해 정보들이 로깅되거나 중계서버의 관리(manage)없이 정보를 은밀하게(privately) 교환할 수 있다.

효율적인 peer-to-peer 바이너리 스트림 교환은 프로세스의 각 단계 마다 이 바이너리 데이터의 serialize, re-encode, convert의 필요를 없애준다.
이를 통해 더 효율적으로 네트워크와 애플리케이션 리소스를 사용할 수 있고, 에러 발생률이 적고 튼튼한 데이터 교환 파이프라인을 만들 수 있다.

WebRTC는 단일 API가 아니라, 다양한 Working 그룹들에 의해 정의된 API들과 프로토콜들의 집합이라는 것을 아는 것이 중요하다.

Share