안녕하세요 여러분~ 오늘은 WebRTC에 대해 알아보도록 하겠습니다.
~의
WebRTC란?
Web-Real-Time Communication의 약자이며 WebRTC는 브라우저와 모바일 애플리케이션 간의 실시간 통신을 가능하게 하는 강력한 API입니다.
API는 응용 프로그램 프로그래밍 인터페이스입니다.
JavaScript를 기반으로 개발자는 비디오 및 음성 채팅, 파일 공유 및 화면 공유와 같은 웹 기반 P2P 통신 응용 프로그램을 구축할 수 있습니다.
현재 서비스하고 있는 많은 실시간 화상회의 플랫폼이 WebRTC를 기반으로 구현되어 있다고 생각하시면 됩니다.
WebRTC 하면 많은 분들이 펜데믹을 먼저 떠올리실 것 같아요. 실제로 COVID-19 이전에도 실시간 통신이 구현되었고 대부분 webRTC를 사용하여 실행되었습니다.
우리에게 익숙한 YouTube, Twitch 및 아프리카와 마찬가지로 미디어 전송 프로토콜(OTT 서비스)은 스트리밍 미디어와 통신하는 데 도움이 됩니다.
지난해 2021년 W3C(World Wide Web Consortium)는 Google, Mozilla, Cisco가 주도하는 WebRTC 1.0이 권장 표준이 되어 WebRTC 기반 네트워크 어디에서나 오디오 및 비디오 통신(OTT)을 제공할 것이라고 발표했습니다.
~의
웹1.0
Web 1.0은 메시징에 관한 것이므로 공급자가 콘텐츠를 만든 다음 업로드하면 사용자가 볼 수 있습니다.
Web 1.0의 예로는 Yahoo와 Wikipia가 Web 1.0 서비스이고, Web 1.0의 경우 위의 정보를 전달하는 것이 목적이기 때문에 서비스와 사용자 간의 소통이 어렵다.
둘째, 현재 우리가 사용하고 있는 Web 2.0은 WebRTC를 기반으로 하여 별도의 플러그인이나 별도의 소프트웨어를 설치하지 않고도 웹 브라우저 간의 상호 통신이 가능합니다.
~의
웹 애플리케이션과 네이티브 애플리케이션이 텍스트, 파일, 동영상, 오디오 등의 데이터를 실시간으로 주고받을 수 있는 오픈소스 기술을 P2P라고 합니다.
대표적인 예로 ZOOM, Microsoft Teams, Google Meet 등이 있으며 Azar는 WebRTC 기술을 일으키는 가장 큰 문제 중 하나입니다.
아자르는 국내 개발사 하이퍼커넥트에서 만든 화상채팅 어플리케이션입니다.
그리고 2021년에는 세계 최대 데이팅 앱 틴더의 운영사인 매치그룹이 약 2조원에 지분 100%를 인수했다.
WebRTC는 클라이언트가 서버를 통해 접속하는 구조가 아닌 스트리밍 서비스로서 사용자가 P2P 연결을 설정하여 통신하는 구조입니다.
구현에 따라 P2P 연결 수가 증가하고 확장될 것으로 생각되면 서버가 필요합니다.
WebRTC의 장단점
WebRTC는 서버를 거치지 않기 때문에 속도면에서 매우 느립니다.
실시간으로 하는 것은 괜찮지만 피어가 너무 많으면 느려지는 것을 볼 수 있습니다.
각 피어와 연결하는 작업(타인의 영상, 오디오 등을 가져오는 작업)을 거쳐야 하므로 피어 수를 늘리는 비용을 부담해야 합니다.
그래서 출산한 사람들과 연결할 때 WebRTC를 사용하는 대신 서버 종속 SFU(Selective Forwarding Unit)를 사용합니다.
~의
그래서 웹 3.0이 등장했습니다.
chatgpt가 전형적인 예입니다.