쿠쿠더님의 블로그

webRTC란? 본문

NODEJS

webRTC란?

쿠쿠더 2025. 4. 21. 17:43

여기서는 목차는없고 간단하게 webRTC에 대해서 설명할려고 합니다 전 글에서는 제가 프로젝트에서 WebRTC를 썼다 했는데 이게 빠지면 안될것 같아서 씁니다..ㅎㅎ 

 

WebRTC란 ?

실시간 통신에 있어 아주 좋은 기술입니다.

 

일단 WebRTC는 Google의 개발들에 의해서 탄생한 기술입니다. 

사용하는 유명한 서비스 : Google Meet, Discord, Zoom 있다.

 

다양한 플랫폼에서 가능한 실시간 커뮤니케이션 기술입니다. 

화상 채팅 , 음성 통화, 파일 공유 등등 이 모든걸 별도의 프로그램 없이 웹 브라우저는 물론이고, 모바일 웹, 데스크탑 앱

에서도 사용할 수 있는 오픈소스 프로젝트이며 강력한 기술입니다.

 

더욱 신기한 점은 서버 없이 P2P(Peer To Peer)로 연결되어 데이터를 주고받을 수 있다는 점.

그리고 모든 주요 브라우저에서 일반 자바스크립트 API로 제공된다는 점입니다.

 

일단 주요 개념 및 용어를 설명해 드릴겠습니다 

 

시그널링 

아까 P2P로 연결하기 위해 중계 서버가 필요하다가 언급했습니다.

이 중계서버를 통해서 서로를 찾고 연결을 시작하는 과정을 바로 시그널링이라고 합니다.

 

비유하자면 시그널링의 개념은 마치 소개팅 주선자처럼 양쪽에서 서로의 정보를 전달해 주는 역할입니다.

이 시그널링은 서버를 통해 이루어지게 되고, 어떻게 구현할지는 자유입니다.

WebSocket, Http 등 적절한 프로토콜을 개발자가 선택하면 됩니다 .

그래서 저는 SocketIo로 하드코딩하다가 Web RTC를 쓰게되었습니다.

 

2. SDP ( Session Description Protocol)

SDP는 "무엇으로 소통할지, 어떻게 소통할지"에 대한 정보를 담겨있는 양식입니다. 

 

3. ICE (Interactive Connectivity Establishment)

두 피어 간의 최적의 통신 경로를 찾기 위해 사용되는 프레임워크입니다.

NAT(NetWork Address Traslation)와 방화벽 등의 네트워크 장벽을 극복하고

직접적인 연결을 가능하게 하는 중요한 역할

- 연결 후보 수집 : 가능한 모든 연결 방법을 찾아냅니다.

- 연결성 검사 : 각 후보에 대해 실제 연결 가능 여부를 테스트합니다.

- 우선순위 결졍 : 가장 효율적인 연결 경로(지연시간이 가장 짧은 연결을 선호)를 선택합니다.

- NAT 및 방화벽 통과 : 다양한 네트워크 환경에서의 연결을 가능하게 합니다. 

https://yong-nyong.tistory.com/99

 

webRTC란 무엇일까요? 주요 개념들 쉽게 설명 해드립니다.

✨ WebRTC란 뭘까?실시간 통신에 있어 아주 재밌는 기술이 있습니다. 바로 webRTC(Web Real-Time Communication)인데요. 2011년, Google의 개발자들에 의해서 탄생한 기술입니다.WebRTC를 사용하는 유명한

yong-nyong.tistory.com

 

 

 

일단은 제가 이 WebRTC를 쓴이유는 시청자에게 실시간으로 방송화면과 오디오 보고 듣게 해주고

중간에 들어가도 호스트가 틀고있는 지점과 맞게 화면과 노래가 구현이 쉽게 가능할수있어서 선택하게

되었고 제가 공부하면서 여기까지 공부를 하였던것 같습니다 .

Web RTC에 대해서는 자세히는 모르지만 이렇게 좋은 API가 있다는것 정도 혹시 똑같이 방송 웹페이지를

프로젝트를 할떄 webRTC를 쓰지면 좋을꺼 같습니다 이상 Web RTC에 대한 간결한 설명이였습니다..

 

 

'NODEJS' 카테고리의 다른 글

웹 소켓이란?  (0) 2025.04.21
OAuth 2.0 카카오 로그인  (0) 2025.04.21
Frountend와 Backend  (0) 2025.03.10
CORS란  (0) 2025.03.10
AJAX, Fetch, Axios  (0) 2025.03.10