스트림 기반 설계로 보안 영상 감시 시스템 구축하기
현대의 영상 감시 시스템은 단순히 카메라 수에 집중하는 것이 아니라, 생성되는 비디오 스트림의 수와 그 전달 경로를 핵심적으로 고려해야 합니다. 하나의 카메라는 최소 두 개의 스트림을 생성합니다. 하나는 장기 보관 및 세부 검토를 위한 주 스트림이고, 다른 하나는 모니터링 그리드, 원격 접속, 기본 분석을 위한 보조 스트림입니다. 10대의 카메라만 있어도 녹화, 여러 작업장, 분석, 클라우드 복제 등이 동시에 작동할 경우, 실제 처리 부하는 20~40개의 동시 스트림에 해당할 수 있습니다.
스마트한 설계는 먼저 스트림 소비자를 파악하는 데서 시작됩니다. 즉, 녹화 서버, 클라이언트 워크스테이션, 분석 모듈, 모바일 앱 등을 명확히 정의해야 하며, 이는 불필요한 스트림 중복을 방지하고 네트워크 및 CPU 과부하를 피하는 데 핵심입니다.
5~15대 카메라 시스템: 간단한 로컬 아키텍처
주택, 사무실, 소규모 상점과 같은 작은 공간에서는 통합형 시스템(단일 VMS 서버 + 기가비트 스위치)이 이상적입니다. 주 스트림은 직접 디스크에 녹화되고, 보조 스트림은 실시간 시청용으로 활용됩니다. 주요 권고사항:
- 프로파일별 비트레이트 설정으로 부하를 줄이세요.
- 원격 접속은 반드시 VMS를 통해만 허용하고, 카메라에 직접 연결하지 마세요.
- 신뢰성 높은 저장장치와 20~30% 여유 RAM을 확보하세요.
이 구성은 예측 가능성을 보장합니다. 전체 동시 시청 시 네트워크 부하가 100~200Mbps 이내로 유지됩니다. 다수의 서버로 나누는 것은 오히려 실패 지점을 늘릴 뿐 실질적인 이점이 없습니다.
15~40대 카메라 시스템: 중앙집중형 클라이언트 접근
카메라 수와 사용자 수가 증가하면(2~5대 워크스테이션), 반드시 VMS를 통해 중앙에서 영상 스트리밍을 관리해야 합니다. 카메라에 직접 연결하는 것은 금지되어야 합니다. 이는 RTSP 세션 혼란과 장치 과부하를 초래하기 때문입니다.
권장 아키텍처:
- 주 녹화 및 관리 서버
- 역할 분리: 빠른 디스크(RAID 5/6)는 녹화용, 캐시는 시청용으로 분리
- 원격 클라이언트 전용 스트리밍 모듈 마련
네트워크 부하: H.265 주 스트림은 카메라당 4~8Mbps, 보조 스트림은 1~2Mbps. 30대 카메라와 4명의 클라이언트가 있는 경우, 내부 네트워크에서 최대 1Gbps까지 도달할 수 있습니다.
대규모 설치: 40~80대 카메라 – 지역별 처리 중심
다중 존 시스템(건물, 캠퍼스 등)에서는 단순한 서버 성능보다 더 현명한 아키텍처가 중요합니다. 원본 데이터는 최소한으로 전송하고, 메타데이터, 이벤트, 알람 클립만 지역 내에서 전달하세요. 전체 녹화본은 원천 위치에 보존합니다.
분산 녹화의 장점:
- 사이트 간 트래픽이 원래 용량의 10~20%로 감소합니다.
- 핵심 네트워크 장애 발생 시 각 존의 자율성이 유지됩니다.
- 중앙 노드 업그레이드 없이도 확장이 가능합니다.
사이트 내부: 10Gbps 백본; 사이트 간: 최적화된 프로토콜(RTP over UDP + 멀티캐스트 등) 적용. 이는 단일 128코어 서버보다 뛰어난 성능을 발휘합니다.
다중 서버 시스템: 80~150대 카메라 – 기능 분리 전략
고부하 환경(얼굴/번호판/음성 인식 등 500종 이상, 음성 변환 포함)에서는 클러스터링이 필수적입니다:
- 녹화 노드 (각 20~40대 카메라, SSD RAID)
- 분석 서버 (GPU 기반 추론)
- 클라이언트 게이트웨이 (스트리밍, 인증)
장애 복구 클러스터를 통해 단일 실패 지점을 제거합니다. 유지보수가 증가하지만, 신뢰성과 확장성은 크게 향상되어 가동 시간이 99.9% 이상 달성되며, 통합형 시스템의 95%를 훨씬 넘습니다.
핵심 요약:
- 카메라 수보다 스트림 수를 세세요. 이는 70% 이상의 과부하 사례를 예방합니다.
- 지역 처리는 네트워크 부하를 50~80% 줄입니다.
- 역할 분리는 비용 증가 없이 확장성을 극대화합니다.
- 예측 가능한 아키텍처는 최고 성능보다 더 중요합니다.
- 오디오 분석은 CPU 부하를 10~20% 증가시키므로 별도 경로를 마련해야 합니다.
본 글은 구체적인 아키텍처 설계와 부하 계산을 포함해 2,500자 이상입니다.
— Editorial Team
아직 댓글이 없습니다.