-
Notifications
You must be signed in to change notification settings - Fork 7
WebRTC! 알아두면 좋은 것들!(작성중)
Chanhee Kim edited this page Dec 2, 2021
·
1 revision
플러그인 도움 없이 브라우저 간에 동영상, 음성 및 일반 데이터들을 실시간으로 주고받을 수 있도록 해주는 API 및 프로토콜을 말합니다!
각 클라이언트가 서로 P2P 방식으로 직접 연결해 미디어 스트림을 주고 받습니다.
- 장점 : 서버는 연결을 위한 정보를 전달하는 역할만 수행하기 때문에 서버에 가해지는 부하가 적습니다. 클라이언트끼리 직접 미디어 스트림을 전달하기 때문에 실시간성이 높습니다.(지연시간이 적다)
- 단점 : 클라이언트가 부담해야하는 트래픽이 굉장히 크기 때문에 클라이언트의 하드웨어와 네트워크에 가해지는 부하가 큽니다.
클라이언트간 P2P로 직접 통신 하지 않고 미디어 서버에서 스트림을 각 클라이언트에 중계 해주는 방식. SFU, MCU 등의 방식이 존재합니다.
- SFU(Selective Forwarding Unit)
각 클라이언트는 미디어 스트림을 서버에 전달하고, 서버는 전달받은 미디어 스트림을 가공하지 않고 그대로 다른 클라이언트들에게 전달해줍니다.
일종의 릴레이 역할을 하는 것입니다!
- 장점 : 클라이언트는 Mesh 방식보다 더 적은 연결을 통해 미디어 스트림을 주고 받을 수 있어 부하가 좀 더 적습니다. MCU 방식과 달리 미디어 스트림을 가공하지 않아 서버 부하가 비교적 적습니다.
- 단점 : 서버가 미디어 스트림을 전달/전송 해야하기 때문에 Mesh 방식보다 서버 부하가 큽니다.
- MCU(Multipoint Control Unit)
각 클라이언트의 미디어 스트림을 서버에서 가공(압축, 믹싱)해 다른 클라이언트에게 전달하는 방식입니다.
- 장점 : 클라이언트들의 미디어 스트림을 가공해 전달하기 때문에 클라이언트에 가해지는 하드웨어, 네트워크 부하를 크게 줄일 수 있습니다.
- 단점 : 미디어 스트림을 가공해야 하기 때문에 서버에 가해지는 부하가 매우 큽니다.
private IP에 public IP를 할당해 주는 역할을 합니다.