정보관리기술/네트워크

WebRTC(Web Real Time Communication) / ①

아이티신비 2024. 1. 15. 10:30

문제9) WebRTC(Web Real Time Communication)

 

답)

 

 

1. 브라우저 기반 음성/화상 통신, WebRTC 의 개념

  • HTML5와 자바 스크립트 API 를 사용하여 웹 상에서 플로그인 없이 브라우저를 기반으로 실시간 음성, 영상 및 데이터를 공유할 수 있는 개방형 실시간 통신 표준 기술
  • 브라우저 간에 Third-party 프로그램이나 Plug-in 없어도 실시간 멀티미디어 서비스가 가능하도록 설계된 API

 

2. WebRTC 의 구성도 및 구성요소

가. WebRTC 의 구성도

 

  • 브라우저 개발자를 위한 webRTC C++ API 와 웹 어플리케이션 개발자를 위한 Web API 를 제공

 

나. WebRTC 의 구성요소

구분
구성요소
설명
기본구조
세션 제어 메시지
  • App 간의 통신 초기화, 종료, 에러 리포트
NW Configuration
  • IP Address, Port 교환
Media Capabilities
  • 웹 브라우저 간 사용 가능한 코덱 및 해상도 전송
  • Signaling 이 완료되면 P2P 스트리밍으로 웹 브라우저 간 미디어 통신 진행
API
MediaStream
(GetUserMedia)
  • 사용자 카메라, 마이크 등의 로컬 입력 장치의 스트링 접근
  • 각기 다른 입력 소스(카메라, 마이크 등) 로 부터 입력된 오디오, 비디오의 Track 들을 동기화하여 하나의 스트림 생성
RTCPeerConnection
  • Peer 간의 데이터를 효율적이고 안정적으로 통신하게 처리하는 기능을 제공(사용자간 미디어 연결 생성)
  • 암호화 및 대역폭 관리, 오디오 및 비디오 연결
RTCDataChannel
  • Peer to Peer 간 데이터 교환을 처리하는 기능을 제공
통신기술
STUN
  • NAT 내부망에서 Peer 간의 연결을 도와주는 서버
  • 구글 등에서 Public STUN Server 로 무상으로 제공
TURN
  • UDP 를 우선으로 Peer 간의 직접적인 통신을 설정하고 이를 사용할 수 없을 경우 TCP/IP 를 기반으로 종단 간의 데이터를 릴레이이하는 방법을 제공하는 서버
ICE
  • NAT 환경에서 자신의 Public IP 를 파악하고 상대방에게 데이터를 전송한기 위한 Peer 간의 응답 프로토콜
SDP
  • 각 Peer 간의 Session 정보를 담고 있는 프로토콜
SRTP
  • 미디어 전송 프로토콜
JSEP
  • Javascript Session Establishment Protoco;
  • Javascript Session 정보를 ICE 를 통해 통신
  • 중복의 회피와 호환성 최대화
보안
TLS/SSL
  • Browser 에서 데이터 및 컨트롤 메시지 전송 시 보안을 위해 사용
코덱
iLBC, iSAL, Opus
  • VoIP 및 스트리밍 오디오를 위한 오디오 코덱
VPB
  • WebM 프로젝트의 비디오 코덱
지터
NetEQ
  • 음성 지티 및 패킷 손실에 방지
비디오 지터 버퍼
  • 비디오 품질에 대한 동적 지터 버퍼
  • 빠른 통신, Non-Plugin, 무료 코덱 사용의 장점을 활용 저비용으로 구현이 한 지원 브라우저의 한계, 방화벽, 다자간 화상회의 시 단점이 존재

 


 

공감과 댓글은 아이티신비에게 큰 힘이 됩니다.

블로그 글이 유용하다면 블로그를 구독해주세요.♥