영상 감시용 네트워크 카메라의 서비스 품질 향상을 위한 영상분배서버 구현
상태바
영상 감시용 네트워크 카메라의 서비스 품질 향상을 위한 영상분배서버 구현
  • CCTV뉴스
  • 승인 2009.09.07 00:00
  • 댓글 0
이 기사를 공유합니다


인터넷 기반 웹 서비스를 통하여 어느 곳에서나 실시간으로 수집영상을 관찰할 수 있다는 개념으로 네트워크카메라가 출현하였다.

기존 폐쇄회로 카메라(CCTV) 시스템은 동축케이블, 멀티플렉서, 리코딩 장치 등과 관련한 설치 및 유지보수에 높은 비용을 요구하고 아날로그 방식이므로 전송 시에 발생하는 화상의 노이즈 및 일그러짐이 발생한다.

그러나 네트워크 카메라는 웹기반의 디지털 영상을 서비스하기 때문에 별도의 비디오케이블과 제어장비가 필요하지 않다. 또한 설치 측면에서도 기존 네트워크 케이블과 시스템을 이용하면 되므로 작업이 용이하다.

프로스트 앤 설리반의 네트워크 카메라 시장 예측조사에 의하면 전 세계 시장은 2010년까지 매년 40% 이상의 고성장을 통해 1조2천억원 규모로 성장할 것으로 내다보고 있다.

네트워크 카메라는 불법 주정차 단속, 쓰레기 불법 투기 단속, 무인 방범 등의 용도로 지방자치단체들의 도입이 활발하다. 특히 최근 도내에서 재난/재해용 영상감시시스템에 네트워크 카메라 도입 움직임이 활발해지고 있다. 그러나 기존의 도내 재난/재해 상황관제용 영상시스템은 주로 도청의 지원 아래 시/군에서 개별적으로 구축하였기 때문에 각 시/군 간의 연계 및 도청 상황관제센터와 제2청, 유관기관과의 연계가 미비한 상태이다.

따라서 개별적으로 구축한 영상시스템에서 수집된 영상은 상호 공유가 불가하며 도내 재난/재해가 발생하였을 때 공동대응을 위한 체제를 확립할 수 없으며,네트워크카메라는 설치 공간과 비용, 안정성 등의 문제로 인하여 임베디드 시스템을 기반으로 구성된다.

따라서 한정된 자원과 성능 하에 운용되므로 내장된 자체 웹 서버에 수 명의 클라이언트가 동시에 접근을 하였을 때는 시스템이 멈추어 서비스가 불가능해지는 상황이 발생하기도 한다. 그리고 다중의 사용자와 네트워크 카메라를 관리하여야 하는 통합 영상 감시 시스템에서는 네트워크 카메라의 상태, IP 변경, 설치장소 등의 관리에 대한 어려움이 있다.  

이에 네트워크 카메라가 가지는 상기의 취약점을 개선하기 위하여 네트워크 카메라와 클라이언트 사이에 위치하여 네트워크 카메라로 접속 후 영상정보를 수신하고 실시간으로 관리하며 이를 클라이언트의 요청에 따라 원활하게 전달하기 위한 서버를 설계하고 구현해 보았다. 구현한 서버는 다중 카메라 및 다중 클라이언트를 원활히 관리하며 이들 상호 간의 임의의 접속을 지원한다.

구현한 서버를 이용한 통합영상감시시스템에서의 실험을 통하여 서버가 클라이언트의 동시접속에 따른 네트워크 및 시스템 부하를 효율적으로 분산하며 단일 네트워크 카메라에 비해 월등한 성능을 제공함을 보임으로써 다중 네트워크 카메라 관리 및 다중 클라이언트 관리에 있어 기존 시스템에 비해 매우 효율적임을 검증하였다.


기존 영상감시시스템 문제점 분석

1. 단위 네트워크 간 영상정보 공유 불가
각 시군에서 인터넷망(ADSL등)을 네트워크 카메라 영상 통신망으로 활용할 경우 특별한 보안 설정을 하지 않으면 접근이 가능하여 영상 정보 공유가 가능하다. 그러나 각 시군에서 영상 정보의 보안을 강조하여 사설망 등 네트워크 카메라만을 위한 독립된 영상통신망을 활용하는 경우에는 타 시군 및 도청에서 근본적으로 접속이 불가능하다. 이는 도내에서 통합관리의 어려움이 있으며 재난/재해 발생시 각 시/군간 공동대응 및 상호협조에 있어 어려움이 있다.

<그림 1>은 영상정보 공유에 대한 문제점을 보여주고 있다.


그림1> 영상 정보 공유의 문제점



표1. 최대 동시접속 지원 수 비교

2. 사용자 증가에 따른 대역폭 및 처리부하 증가

네트워크 카메라는 그 특성상 사용자 동시접속에 있어 매우 취약하다. [표 1]은 현재 시점까지 출시된 유명업체의 네트워크카메라에 대하여 최대 지원 가능한 동시접속자 수를 보여주고 있다. 다만, 표에서의 수치는 연결만을 고려한 논리적인 값으로서 실제의 서비스에서는 프레임 수의 저하로 인하여 활용 불가능하다. 

현재 시군 네트워크카메라 영상 중 ADSL 등 인터넷망을 통해 전송되는 영상정보는 공유가 가능하나 송신측 및 전체 네트워크의 과부하가 발생할 수 있다. 이는 기존 시군의 네트워크카메라 영상을 다수의 사용자가 인터넷 구간을 통해 요청할 경우 요청 수에 따라 영상전송 트래픽이 발생하여 송신측 및 전체 네트워크 과부하, 영상 속도 및 품질저하가 발생한다.

<그림 2>는 사용자 증가에 따른 대역폭 증가, 과부하 발생에 따른 문제점을 보여주고 있다.  


그림2> 사용자 증가에 따른  대역폭

3. 네트워크 변경내역 지속적 모니터링 불가

시군의 현장에 설치되어 있는 네트워크 카메라의 IP 주소를 변경하면 해당 카메라 영상을 모니터링 하는 해당 사용자 각각의 PC에서 IP를 변경해야 모니터링이 가능하다. 이는 다수의 카메라에 대한 IP 변경 내역을 모든 사용자에게 통지하기 어려우며 통합 영상 감시 시스템에서 관리자는 네트워크 변경내역을 지속적으로 참조하여야 하는 불편함이 있다.

<그림 3>은 네트워크 변경에 따른 문제점을 보여주고 있다.


그림3> 네트워크 변경내역 지속적 참조 필요


영상분배서버를 통한 영상감시시스템


상기한 바와 같은 영상감시시스템의 문제점은 다중의 네트워크 카메라와 다중의 클라이언트를 분리하여 상호 독립적으로 관리하는 영상분배서버를 둠으로써 해결 가능하다.

이러한 영상분배서버는 네트워크 카메라와 클라이언트 사이에 위치하여 카메라에 대한 지속적인 접속 연결을 유지 관리하고 단일 또는 다수의 네트워크 카메라로부터 수집한 영상정보를 다중의 클라이언트에게 원활하게 서비스할 수 있다. 본 고에서는 제안하는 영상분배서버가 가져야할 기능과 특성을 자세하게 알아보자.

1. 영상정보 공유를 통한 대단위 영상감시시스템 지원

제안한 영상분배서버는 서버 상호간의 연동을 통한 캐스캐이드 접속 방식으로 설계하여 각 시군 및 도청 내의 모든 영상정보를 공유하고 통합 관리 할 수 있도록 하였다. 이를 기반으로 사설망, 인터넷망, 전용망 등 다양한 통신구간으로 전송되는 시군 영상정보를 영상분배서버를 통해 연계하여 도청 통합망(네트워크카메라 영상망 부문을 거쳐 전송하게 된다. <그림 4>는 영상분배서버를 통한 영상정보 공유과정을 보여주고 있다.


그림4> 영상분배서버를 통한 영상정보 공유

2. 분배기능을 통한 원활한 서비스 지원

시 군, 도청으로의 영상전송은 해당 지역 영상분배서버에서 담당하여 영상전송 트래픽을 분산하게 된다. 영상분배서버는 네트워크 카메라에 접속하여 영상을 수집하며 클라이언트는 영상분배서버에 접속하여 영상을 수신하게 된다.

그러므로 네트워크 카메라에는 1개의 트래픽 부하만이 발생하며 클라이언트의 트래픽 부하는 영상분배서버가 담당하므로 네트워크 과부하를 방지할 수 있다. 또한 네트워크 카메라에 직접 접속시 불가능하던 사용자 접속 정보가 영상분배서버를 통해 통합관리가 가능하다.

<그림 5>는 영상분배서버를 통한 네트워크 트래픽 분산과정을 보여주고 있다.


그림5> 영상분배서버를 통한 네트워크 트래픽 분산과정

3. 중앙 관리서버를 통한 지속적 서비스 지원

네트워크 카메라의 접속 정보는 영상분배서버에 의하여만 관리되며 클라이언트에게는 추상화된 개념으로서의 채널정보만 제공된다.
따라서 현장 네트워크 카메라의 IP 주소 변경이 필요한 경우 담당자가 관할 시군의 중앙 관리 서버로서의 영상분배서버 한곳에서만 변경된 IP 주소를 유지하면 모든 사용자가 영속적인 논리적 채널정보만으로 지속적인 모니터링이 가능하다.
또한 네트워크 카메라 IP만이 아니라 카메라 상태 정보 및 설치장소 등 다양한 정보를 공유할 수 있다.

<그림 6>은 영상분배서버를 통한 정보 공유 과정을 보여주고 있다.


그림6> 영상분배서버를 통한 네트워크 트래픽 분산과정


영상분배서버 구현


네트워크 카메라는 영상 포맷 및 접속 프로토콜이 표준화되어 있지 않고 각 업체마다 상이하다.
따라서 본 고에서는 영상분배서버 구현을 위하여 세계적으로 네트워크 카메라를 가장 많이 보급 하고 있는 A사 네트워크 카메라를 기반으로 구현하였다. A사 네트워크 카메라의 영상 압축기술은 MJPEG을 기본으로 지원하며 최근 출시된 카메라에는 H.264를 지원한다.

최근 시장에서는 압축기술과 영상품질이 월등히 뛰어난 H.264, MPEG-4를 지원하는 네트워크카메라가 많이 출시되고 있지만 아직까지 시장에서 사용되고 있는 네트워크카메라의 대부분은 MJPEG 방식을 기반으로 하고 있다. 따라서 네트워크카메라로부터 MJPEG 압축영상을 수집하여 영상을 실시간으로 관리하며 요청에 따라 클라이언트에게 분배하기 위한 영상분배서버를 구현하였다.

<그림 7>은 영상분배서버의 구현 결과를 보여주고 있다.



그림7> 영상분배서버

1. 데이터베이스 관리

제안하는 영상분배서버는 다중의 네트워크 카메라와 클라이언트 정보를 유지하기 위하여 데이터베이스의 관리를 필요로 한다. 네트워크카메라를 위한 데이터베이스 테이블에는 카메라로의 접속정보로서 URL, IP, Port, Channel, ID, Password 등이 관리되어야 하며, 카메라 관리를 위한 접속상태정보, 등록시간, 마지막 접속시간, PTZ 허용정보 등의 추가정보가 저장된다.

클라이언트를 위한 데이터베이스 테이블에는 클라이언트 접속 허가를 관리하는 ID, Password와 관리자 권한, 고유정보 등이 저장된다. 카메라와 클라이언트 데이터베이스 테이블의 구성은 [표 2]와 같다. 이외에 카메라와 사용자 그룹별 관리를 위한 테이블과 시간별 클라이언트 접속 정보를 로그로 남기기 위한 테이블이 요구된다.

네트워크 카메라가 다양한 지역에 산재되어 있을 경우 카메라 관리의 어려움을 영상분배서버의 데이터베이스에서 통합 관리하며 도청 및 관할시구, 제2청의 서로 다른 영상분배서버 데이터베이스를 공유하면서 통합 영상 시스템 구축이 가능하다. 또한 사용자 접속 정보에 따라 권한별 서비스 및 통합관리가 가능하다. 


표2. 데이터베이스 정보
  
2. 영상수집 프로토콜

영상요청은 데이터베이스에 저장된 카메라 정보에 따라 접속한다. 네트워크 카메라는 기본적으로 웹서버를 내장하고 있다. 따라서 영상을 요청하기 위해서는 HTTP 프로토콜에 따라 영상을 요청하고 응답에 따라 JPEG 영상을 추출하여 버퍼관리를 한다.
요청 메시지와 응답 메시지는 아래와 같다.   

Method : GET
Syntax : Request Multipart JPEG image
  
http:///mjpg[/]/video.mjpg
Response :
HTTP/1.0 200 OKrn
Content-Type:
multipart/x-mixed-replace;boundary=rn
rn
rn

where the proposed is
myboundary
and the returned field is
Content-Type: image/jpegrn
Content-Length: rn
rn
rn
rn


상기와 같이 영상 정보를 원활히 관리하고 서비스하기 위하여 영상분배서버는 수집된 JPEG 영상을 추출하여 순서번호를 부여한 후 버퍼에 복사한다. 새로운 영상이 수집되면 순서번호를 증가시켜 부여하는데 이는 영상 수집과 영상 분배서버간의 흐름제어를 위해 사용된다.


그림8> 순서번호에 의한 흐름제어

3. 클라이언트 접속요청 프로토콜

클라이언트 접속요청은 데이터베이스의 일관성 문제해결 및 사용자 인증 등을 위하여 다음과 같은 6단계로 관리하도록 구성하였다.
① 데이터베이스에서 사용자 정보 갱신
② 영상분배서버 최대사용자 접속 여부 판단
③ 접속요청 프로토콜의 정당성 검증
④ ID, PW 정당성 검증
⑤ 영상요청 채널 정보 갱신
⑥ 클라이언트 디스플레이 정보 갱신

<그림 9>는 접속요청 패킷을 보이며 [표 3]은 접속요청 알고리즘을 보여주고 있다. 



  Read User Information from Database
if NumofConnect < MAX_CONNECT_SERVER
  then send ERROR to client
if Receive Packet is not right
  then send ERROR to client
switch(command)
 case REQ_CONNECT
   if ID, PW is not right
     then send ERROR to client
   if Request CH is not right
     then send ERROR to client
  else write Request CH into User Information
  Update All Client Display Information  
 case REQ_IMAGE
      . . .
 case REQ_DISCONNECT

표3> 접속요청 알고리즘

4. 클라이언트 영상요청 프로토콜

영상분배서버와 다중 클라이언트간의 원활한 영상 서비스를 위하여 클라이언트 영상요청 프로토콜은 다음과 같은 5단계로 정의하여 구현하였다.
① 클라이언트 영상요청 채널 정보 입력
② 요청 영상 카메라 접속 상태 확인
③ 클라이언트 수신영상 순서번호와 요청 영상 순서번호 확인
④ 요청 영상 송신
⑤ 클라이언트 수신영상 순서번호 갱신
<그림 10>과 [표 4]는 영상요청 및 분배 패킷과 알고리즘을 보여주고 있다. 


그림10> 영상 요청 및 분배 알고리즘
  
switch(command)
 case REQ_CONNECT
     ...
 case REQ_IMAGE
   ReqCam = ClientReqChannel
   if Request Camera is Connected then
     if Img_Seq is higher than Cli_Seq then
       Send Requset Image to Client
       Update Client Sequence
       Update Image Frame Information
     else
       Send ERROR to Client     
 case REQ_DISCONNECT
      . . . 

표4. 영상요청 및 분배 알고리즘



실험결과


실험은 영상분배서버를 통한 영상분배와 네트워크 카메라 직접 접속을 통한 영상분배의 서비스 품질 차이를 비교 분석하였다.
영상분배서버 설치환경과 실험 대상 네트워크 카메라 성능은 [표 5]와 같다. 영상 수신을 위한 클라이언트로는 영상분배서버의 경우 영상분배서버의 클라이언트 프로토콜에 대응하도록 자체 개발한 통합 Viewer를 사용하였으며, 네트워크 카메라로의 직접 접속의 경우 업체에서 제공하는 단일 Viewer를 사용하였다. 


표5. 하드웨어 성능 및 플랫폼 비교

1. 수신 프레임률 비교

수신 프레임률 비교는 클라이언트 접속 수를 증가시키면서 다중사용자에 따른 영상분배서버와 네트워크 카메라 프레임 수신율을 비교하였다. <그림 11>은 수신 프레임률 비교 결과를 보여주고 있다. 네트워크 카메라 직접접속은 소수의 클라이언트가 접속하였을 시, 높은 프레임률을 보였으나, 클라이언트 수가 늘어나자 급격한 감소를 보였다. 10개의 세션을 연결하자 더 이상의 세션을 연결할 수 없었다.

카메라 설정에 따라 다소 차이는 있으나 대부분의 네트워크 카메라는 다수의 세션을 연결하게 되면 더 이상의 세션을 허가하지 않는다.
이는 네트워크 카메라의 특성상 한정된 자원으로 영상 서비스 및 다중접속을 지원하는 한계 때문이다. 영상분배서버는 최대 500개의 세션 연결이 가능하도록 설계하였으며 다중 클라이언트 접속에 있어 수신 프레임률 측면에서 네트워크 카메라 직접접속에 비해 월등한 성능을 보임을 확인하였다.



그림11> 수신 프레임률 비교

2. 영상분배서버를 통한 영상 분배 지연 평가

영상분배서버에 의한 영상서비스의 지연을 평가하기 위하여 영상분배서버가 네트워크 카메라로부터 영상수신을 하였을 때의 시간과 그 영상을 클라이언트에게 서비스 하였을 때의 시간의 차분을 계산하였다. 그 결과는 <그림 12>와 같다.


그림12> 지연시간 비교 결과

이러한 지연은 클라이언트가 서버에게 영상을 요청하는 패킷의 네트워크 지연과 클라이언트의 영상 요청 주기에 의한 지연으로 분석된다. 그러나 네트워크 상황에 따라 지연시간에 다소 차이가 있었지만 그 지연은 평균 39ms로서 초당 8프레임의 서비스가 유지되는 상황에서 1/3프레임 시간의 지연이 발생하는 것을 의미하므로 같은 프레임률을 제공하는 직접접속 상황에서의 영상지연과 비교하여 무시할만한 수준이다.

지금까지 기존 영상시스템의 문제점을 분석하고 이를 개선하기 위하여 영상분배서버를 제안해봤다. 기존 영상시스템은 단위 네트워크간 영상정보 공유 불가, 사용자 증가에 따른 대역폭 및 처리부하 증가, 네트워크 변경내역 지속적 모니터링 불가의 문제점을 가지고 있으나 이러한 문제는 제안한 영상분배서버를 이용하면 모두 해결이 가능하다.

또한, 제안한 영상분배서버를 구현한 후 실험을 통하여 네트워크 직접 접속을 통한 영상 서비스보다 영상분배서버를 통한 영상 서비스가 다중클라이언트 지원에 있어 뛰어난 성능을 보임을 검증하였다. U-City 관련 국내외 시장규모는 2010년에 이르면 국내의 경우 57조 3,000억원, 국외의 경우 7,025억 달러에 이를 것으로 전망된다. 현재 국내 각 시군에서는 U-Traffic 구성을 위하여 영상시스템 도입이 활발하게 이루어지고 있으나 본고에서 제시한 문제점으로 인하여 어려움을 겪고 있다.

이에 본고에서 기술한 영상분배서버를 이용하면 다중사용자를 위한 향상된 서비스 품질을 제공하면서도 각 시군 뿐만 아니라 경찰청이나 소방방재청 등의 정부 산하 기관을 포함하여 통합관리 할 수 있는 대단위 영상보안관제시스템의 구축이 가능할 것이다. (끝)

순천향대학교 정보보호학과 임강빈 교수

자료 협조 : 전자공학회




댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
0 / 400
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.