'Android'에 해당되는 글 31건
- 2022.05.30 WebRTC 정리.
1. WebRTC란?
브라우저간 바이너리 데이터를 P2P 형식으로 교환하는 기술.
별도의 플러그인 설치가 없음.
구글의 오픈소스 프로젝트로 웹표준.
아직 완성되지 않은 기술.
2. 절차
1) 퍼미션 허용
2) IP, Port 등 공유
3) 연결
4) 데이터 교환
3. 용어 정리
* STUN ( Session Traversal Utilities for NAT )
- 단말이 자신의 공인 IP 주소와 포트를 확인하는 과정에 대한 프로토콜.
- 자신을 식별할 수 있는 정보를 반환해줌.
* TURN ( Traversal Using Relay NAT )
- STUN을 통해서 자신을 식별할 수 없는 경우 사용
- 네트워크 미디어를 중개하는 서버 ==> 중간의 서버를 거치기 때문에 P2P 통신이 아니며 지연이 발생하게 됨.
* Candidate
- STUN, TURN 서버를 통해 얻은 IP 주소, 프로토콜, 포트로 구성된 연결 가능한 네트워크 주소들의 후보
> 자신의 사설 IP와 포트 넘버
> 자신의 공인 IP와 포트 넘버 (STUN, TURN 서버로부터 획득)
> TURN 서버의 IP와 포트 넘버 (TURN 서버로부터 획득)
* ICE (Interactive Connectivitiy Establishment)
- 두 개의 단말이 P2P 연결을 위한 최적의 경로를 찾는 프레임워크
- Trickle ICE : Candidate 수집에는 오랜 시간이 걸리며, 그 과정중 지연이 발생 가능함. 따라서 이런 비효율적인 교환 작업을 병렬 프로세스로 수행할 수 있게 해줌. (비동기 처리를 통해 Candidate를 찾게되면 즉시 교환을 시작함)
- ICE 프레임 워크는 STUN or TURN 서버를 통해서 상대방과 연결 가능한 후보들(Candidate)를 가지고 있음.
* Signaling
- RTCPeerConnection 통신에 사용할 프로토콜, 채널, 미디어 코덱 및 형식, 데이터 전송 방법, 라우팅 정보와 NAT 통과 방법, IP 등을 포함한 통신 규격을 교환하기 위해 두 장치간 제어 정보를 교환하는 과정.
'Android > etc' 카테고리의 다른 글
외부 웹서버와 로컬 웹서버의 연계 (0) | 2022.08.03 |
---|---|
WebRTC Test (With Flutter) (0) | 2022.05.24 |
WebRTC Build (0) | 2022.05.23 |
안드로이드 앱 런칭용 이미지 및 기타 사이트 (0) | 2020.02.19 |
구글 마테리얼 디자인 (0) | 2020.01.08 |