WebRTC(Web Real Time Communications)
- 웹 브라우저간(최근에는 andorid, ios도 지원) 별도로 프로그램을 설치할 필요 없이 서로 통신할 수 있도록 설계된 API입니다.
- WebRTC를 통해 음성 또는 영상 통화, P2P 파일 공유 등을 할 수 있습니다.
Major Components
getUserMedia
: 입력 장치(마이크나 카메라 등)을 통해 Audio와 Video Media를 가져옵니다.
RTCPeerConnection
: Peer(사용자) 간 오디오, 비디오 통신을 활성화합니다. 여기서 신호 처리나, 코덱 관리, P2P 통신, 보안, 대역폭 관리를 수행합니다.
RTCDataChannel
: Peer 간 양방향 데이터 통신을 허용합니다. 웹소켓과 동일한 API를 사용하기에 빠른 Latency를 보입니다.
P2P(Peer To Peer)
- 개인 컴퓨터(peer)들이 서로 연결되어 파일을 전송하는 시스템입니다.
- 개인 컴퓨터들이 서버이자 클라이언트가 되는 것입니다.
- P2P를 이용한 대표적인 프로그램은 소리바다와 토렌트입니다.