SRT와 ARQ

이정석·2025년 7월 23일
0

미디어

목록 보기
1/4

SRT (Secure Reliable Transport)

SRT는 실시간 비디오 스트리밍을 위해 Haivision에서 개발한 오픈 소스 전송 프로토콜

핵심 목표

  • Low latency (낮은 지연 시간)
  • Packet loss recover (패킷 손실 복구)
  • Security (AES 암호화 지원)

기반 기술
UDP를 기반으로 함 (TCP 아님)
자체적인 ARQ(Automatic Repeat reQuest) 재전송 매커니즘 포함
전송 타이밍 제어(playback delay 설정)
네트워크 환경의 품질을 실시간 측정하여 조정

설계 철학

SRT는 다음과 같은 철학에 기반해 설계됨

  • 실시간 스트리밍에 최적화: 방송, 스포츠, 원격 제작 등을 위한 저지연 전송을 목표
  • UDP기반 + 신뢰성 확보: TCP의 높은 신뢰성과 UDP의 낮은 지연 사이에서 균형 추구
  • 네트워크 품질 변화에 강인한 복원력: ARQ 기반 재전송, 네트워크 지터 버퍼, 패킷 타이밍 복원 기능
  • 적응형 전송(Adpative Transmission)
  • 안정성과 보안의 공존

ARQ (Automatic Repeat reQuest)

기본 동작 방식

  • 송신자가 패킷을 보냄
  • 수신자가 확인 응답(ACK)을 보냄
  • ACK가 오지 않으면 재전송

종류

  • Stop-and-Wait ARQ: 하나 보내고 ACK 기다림
  • Go-Back-N ARQ: 여러개 보내고 문제 생기면 이후 전부 다시 보냄
  • Selective Repeat ARQ: 손실된 패킷만 선택적으로 재요청 (SRT가 이 방식 사용)

ARQ와 Latency의 트레이드 오프

ARQ를 사용할 떄는 신뢰성과 지연 시간 사이에 명확한 트레이드오프가 존재

신뢰성 증가 - 패킷 손실이 있어도 재전송으로 복구 가능
지연 시간 증가 - 재전송 요청 -> RTT만큼 대기 발생

예시:
RTT가 100ms이고 패킷이 한번 손실되면, 복구까지 최소 100~200ms 지연이 추가됨
재전송 타이밍과 버퍼 크기가 지연의 주요 변수임
Live 방송에서는 너무 긴 지연은 수용 불가 -> SRT는 버퍼를 제한하고 손실 일부 허용

profile
개발을 좋아라 하는 개발자!

0개의 댓글