본문 바로가기
실무 TIP

IT 실무용어 파헤치기 16 - WebRTC / ICE / STUN Server / TURN Server / SDP / P2P / SFU / MCU

by 함께 공부해요 2022. 1. 13.

WebRTC

Peer to Peer(P2P - 1:1) 통신을 가능하게 해주는 웹기술. 하지만 현실세계에선 클라이언트 간에 통신은 NAT(Network Access Translator) gateway가 있어서(네트워크 라우터같은) 대비책(fallback)이 필요합니다.

그래서 STUN과 TURN같은 Signaling Server가 있습니다.


ICE(Interactive Connectivity Establishment)

웹 브라우저 간에 피어 투 피어 접속을 할 수 있게 해 주는 프레임워크


STUN Server

클라이언트간의 메타데이터 정보(코덱, 파일유형, 클라이언트 IP주소)를 교환해주기 위한 서버

TURN Server

WebRTC를 통해 클라이언트 간 통신이 실패했을시 클라이언트에게 영상, 음성, 텍스트 등의 데이터 전달을 대신해주는 서버로, Relay Server(방송서버) 역할을 합니다.


SDP (Session Description Protocol)

연결된 멀티미디어 데이터의 해상도, 형식, 코덱, 암호화 방법 등등을 기술하는 표준으로써, 피어 투 피어로 연결된 서로 간에 전송될 데이터를 이해하는데 사용됩니다.

 

SDP는 미디어 자체라기 보다는 메타데이터라고 볼 수 있습니다.


P2P (Peer to Peer)

중앙 서버 없이 종단 간 직접 연결 방식은 비용 측면에서 유리하나, 피어 수가 증가(mesh structure)할수록 시스템과 네트워크의 높은 capacity를 요구하여, 1:1 또는 소규모 미디어 교환에 적합합니다.

SFU (Selective Forwarding Unit)

중앙 서버를 통해 종단 간 미디어 트래픽을 중계하는 중앙 서버 방식으로, 각 피어 연결 할당 및 decrypt/encrypt 처리 비용 정도를 감수하여, 영상 방송과 같은 1:M(or minimum-N:M) 스트리밍 서비스 구조에 적합합니다.

MCU (Multi-point Control Unit)

다수의 송출 미디어를 중앙 서버에서 혼합(muxing) 또는 가공(transcoding)하여 수신측으로 전달하는 중앙 서버 방식으로, 클라이언트와 네트워크의 부담이 현저히 줄어드는 반면 중앙 서버의 높은 컴퓨팅 파워가 요구됩니다.

* 참고: https://seunghyum.github.io/webrtc/WebRTC/#

 

[WebRTC] 공부

WebRTC란?

seunghyum.github.io

 

#WebRTC #ICE #STUN #TURN #STUN서버 #TURN서버 #SDP #P2P #SFU #MCU

댓글