Skip to content

DLTS와 Signaling

GWANGHYEON KIM edited this page Dec 3, 2024 · 1 revision

DTLS (Datagram Transport Layer Security)

개요

  • UDP 통신에서 보안을 제공하는 프로토콜
  • WebRTC 미디어 스트림의 안전한 전송을 보장

DTLS Handshake 과정

sequenceDiagram
    participant Client as 방송자
    participant Server as 미디어 서버

    Note over Client,Server: DTLS Handshake 과정
    Client->>Server: ClientHello (인증서, 암호화 방식 제안)
    Server->>Client: ServerHello (서버 인증서, 선택된 암호화 방식)
    Client->>Server: 인증서 확인 & 키 교환
    Server->>Client: 완료 메시지
    Note over Client,Server: 보안 연결 수립 완료
Loading

시그널링 (Signaling)

개요

  • WebRTC 연결 설정에 필요한 정보 교환 프로세스
  • Socket.IO를 통한 실시간 통신 구현
  • 정보 중계 역할 (실제 미디어 스트리밍은 WebRTC가 담당)

주요 기능

  1. 연결 협상: P2P 연결 정보 교환
  2. 미디어 정보: 코덱, 해상도 등 공유
  3. 네트워크 정보: ICE candidate 교환
  4. 보안 정보: DTLS 인증서 및 파라미터 공유

시그널링 프로세스

sequenceDiagram
    participant Client as 방송자
    participant Server as 시그널링 서버
    
    Note over Client,Server: 시그널링 과정
    
    Client->>Server: 1. createRoom
    Server-->>Client: Room 생성 완료
    
    Client->>Server: 2. createProducerTransport
    Server-->>Client: Transport 정보 (ICE candidates, DTLS params)
    
    Client->>Server: 3. connectProducerTransport
    Server-->>Client: 연결 완료
    
    Client->>Server: 4. produce (미디어 스트림 정보)
    Server-->>Client: Producer ID

    Note over Client,Server: WebRTC 연결 준비 완료
Loading

👥 팀 강점

🧑‍💻 개발 일지

📌 ALL

📌 FE

📌 BE

💥 트러블 슈팅

📌 FE

📌 BE

🤔 고민

📚 학습 정리

📌 김광현

📌 백지연

📌 전희선

📌 한승헌

🤝 회의록

🗒️ 데일리 스크럼

💬 팀 회고


👨‍👩‍👧‍👦 소개

🌱 문화

🔨 기술 스택

⚙️ 서비스 아키텍쳐

🚧 CI/CD

🌊 Flow

💭 6주를 보내면서

Clone this wiki locally