Internet Streaming Technology컴퓨터 네트웍을 통해 동작하는 새로운 형태의 멀티미디어 응용 프로그램은 기존의 네트웍 환경을 최대한 이용해야 하지만 기존의 네트웍 환경은 응용 프로그램의 안정성이 시간보다 중요하다. 그러므로 기존의 ftp나 메일과 같은 응용 프로그램의 경우는 매우 안정적으로 동작하지만 연속적인 대규모의 멀티미디어 데이터의 전송에는 전송의 지연이라는 문제점을 안고 있다. 그러나 대부분의 멀티미디어 데이터는 상호작용(interactive)이 중요하며 여러 형태의 전송 지연은 매우 심각한 문제이다. 그러므로 네트웍을 통한 계속적으로 실시간 비디오, 오디오의 전송은 스트림 형태로 이루어 지고 있다. 현재의 네트웍 환경은 이러한 새로운 형태의 실시간 멀티 미디어 데이터에는 적합하지 않으며 이전에는 존재하지 않던 새로운 형태의 프로토콜, 라우터, 클라이언트/서버 환경, 즉 멀티미디어 네트웍 환경을 요구하고 있다.
이상적인 네트웍 환경이란 하나의 네트웍이 모든 형태의 트래픽을
지원할 수 있음을 의미하며 이는 곳 경비를 최소화 하면서 모든 데이터
형식을 하나의 응용 프로그램으로 통합하는 것을 말한다. 그러나 네트웍을
통한 실시간 멀티미디어 트래픽(오디오/비디오)의 전송은 기존의 텍스트,
그래픽과 같은 트래픽 들의 전송과는 매우 다른 형태이다. 후자의
경우는 매우 다양한 대역폭을 필요로 하지만 패킷 전송간에 어느 정도의
지연은 트래픽의 특성상 큰 문제가 되지 않는다. 그러나 실시간 멀티미디어
트래픽은 한꺼번에 트래픽을 전송하는 것이 아니라 연속되는 형태의
스트림으로 전송하기 때문에 전송의 지연이 매우 중요하며 적은 전송
지연으로 최대의 멀티미디어 데이터를 안정적으로 보내기 위한 스트림
처리 기술은 멀티미디어 네트웍의 가장 중요한 부분이다.
몇 가지 덧붙여야 할 중요한 요소가 있기는 하지만 현재의 네트웍은
상호작용하는 실시간 멀티미디어 트래픽을 처리 할 수 있다. 첫번째는
실시간 전송에 최적화된 전송 프로토콜이 필요하다. 비디오 스트림은
화일 전송과는 달리 신뢰성이 100% 보장될 필요는 없다. 전송 중 손실된
패킷은 그 손실량이 일정량 이하이면 소프트웨어 적으로 보상이 가능하며
사용자가 비디오 스트림을 보는데 큰 지장은 없다. 두번째는 대역폭의
효과적인 이용인데 이는 멀티캐스트를 통해서 어느 정도 가능하다.
이 방법은 모든 사용자에게 똑 같은 패킷을 복사에서 전송하는 것이
아니라 동시에 특정 서브넷의 모든 사용자에게 패킷을 전송하므로
대역폭의 낭비를 효과적으로 줄일 수 있다. 세 번째는 시간에 큰 영향을
받는 비디오 스트림의 경우 우선권의 할당과 네트웍 대역폭을 일정하게
보장함으로 해서 원하는 질의 서비스를 보장할 수 있다. 이러한 네트웍
소프트웨어와 인프라스트럭쳐의 변경 외에도 네트웍의 단말노드(예:
PC)도 반드시 스트림을 압축/복원, 그리고 동기화를 할 수 있는 기능이
있어야 한다. 이러한 모든 요소들이 갖추어 지면 ATM과 같은 새로운
방법이 많은 대역폭을 제공 함으로써 보다 쉽게 문제를 해결할 수도
있을 것이다. 현재의 네트웍을 통한 실시간 멀티미디어의 이용을 위해서
사용자들은 반드시 다음과 같은 2가지를 주의해야 한다. 첫번째는
앞에서 언급한 모든 요구 사항이 가능 하더라도 반드시 표준을 따라야
한다. IETF는 확장성, 실시간, 멀티캐스트 등에 관하여 표준 프로토콜을
개발하고 있다. 이와 더불어 Winsock, MCI와 같은 표준 인터페이스를
따라야 하며 데이터의 압축 복원 역시 H.261, MPEG 같은 국제 표준을
따르도록 한다. 두 번째 요소는 사용자 PC 하드웨어의 특별한 개선
없이 소프트웨어를 통해 이용이 가능해야 한다. 과거의 저 성능의
PC와 달리 지금의 펜티엄급 PC들은 특별한 경우를 제외하고는 모든
기능을 소프트웨어 적으로 처리 할 수 있다. 이러한 소프트웨어는
하드웨어 보다 훨씬 저가이고 훨씬 쉽게 개선이 가능하다.
앞에서 언급한 바와 같이 멀티미디어 네트웍을 위한 소프트웨어 해결책으로는 멀티캐스트, 실시간 데이터 전송, 서비스의 보장(QOS), 그리고 멀티미디어 스트림에 대한 압축/복원, 그리고 동기화 등이 있다. 각각에 대해 살펴 보면 다음과 같다.
네트웍에서 전형적인 형태의 스트림 전송 방법은 유니캐스트와 브로드캐스트가 있다. 그 외의 방법이 멀티캐스트이다. 멀티캐스트는 레이어 3의 IP-Multicast 표준 프로토콜로 만들어 졌으며 LAN이나 WAN을 통해 하나의 송신자로부터 특정 그룹의 구성원 모두에게 데이터가 전송된다. 멀티캐스트 그룹의 크기는 적게는 몇 명부터 많게는 수 천명 까지 다양하며 유니캐스트와 같이 똑같은 데이터를 수 천명에게 복사하거나 또는 브로드캐스트와 같이 원하지 않는 사람에게도 모든 데이터를 보내는 일 없이 대역폭을 효율적으로 이용할 수 있다.
Layer-4 프로토콜인 TCP는 보편적인 packet-switched 네트웍에서 가장 안정적으로 데이터를 전송하는 메커니즘으로 개발 되어 이용되고 있다. 그러나 TCP의 경우 흐름 제어(flow control), 오류 수정 같은 기능은 전송의 지연을 초래하며 이러한 방법은 본질적으로 스트림 형태이며 지연에 매우 민감한 전송 문제와 멀티캐스트 제공 등을 필요로 하는 실시간 멀티미디어 데이터의 처리에는 부적합 하다. IP 네트웍을 통해 스트림 데이터를 전송하는 방법은 IETF에서 개발한 ST-II가 있다. 이 프로토콜은 스트림을 위해 IP를 대치하도록 고안되었으며 하나의 네트웍 레이어 내에서 멀티캐스트와 QOS를 제공할 수 있도록 하였다. 그러나 ST-II는 네트웍의 끝단(단말) 주소가 정적 바인딩을 기본으로 하므로 대규모 또는 동적인 그룹에 대해 확장성을 제공할 수 가 없었다. 그러므로 IETF에서는 기존의 IP 네트웍에서 현재의 일반 데이터와 스트림 데이터를 모두 수용할 수 있는 보다 확장성 있는 프로토콜 개발의 필요성을 인식하게 되었으며 IP내에서의 멀티캐스트 보장, IP의 상위에서 동작하는 새로운 프로토콜을 통한 QOS의 보장, 그리고 스트리밍 데이터의 멀티캐스트 요구와 실시간을 보장하는 새로운 프로토콜(RTP) 등의 3단계의 새로운 시도가 시작되었다. RTP는 현재 MBONE위에서 구현되어 있으며 최근 버전인 RTP Ver 2.는 RFC로 승인된 상태이다.
(Real-Time Transport Control Protocol)와 함께 RTP는 네크웍을 통해 스트림 데이터를 처리하기 위해 TCP와 나란히 운영 된다. RTP는 순서정보(sequencing information), 출력(예; frame)시각을 요구하는 타임 스탬프(Time Stamp), 서로 다른 데이터 스트림(A/V)의 동기화, 페이로드 패킷의 정보 등을 포함하는 헤더 패킷을 이용한다.
RTCP는 현재의 네트웍 상태와 수신 상태(reception quality)등의 피드백을 제공하며 응용 프로그램이 자동적으로 그러한 상태에 적응하도록 만들어 준다.
RTSP(Real-Time Stream Protocol)은 현재 넷스케이프사와 약 40여개의 업체간에 공동으로 개발 중인 프로토콜로 인터넷의 표준으로 만들기 위한 노력이 한창이다. 이 프로토콜은 양방향의 완전한 스트림 제어, 현재의 네트웍 인프라 스트럭쳐에서의 높은 안정성, 데이터 전송의 최소화된 부하, 기존 프로토콜들과의 완벽한 결합, 보안성, 확장성, 확인된 기술 기반의 구성 등을 목표로 하고 있으며 1996년 10월 첫번째 draft가 IETF에 제출된 상태이다.
라우터를 포함하는 네트웍간의 환경에서 패킷의 큐잉(queuing)은 여러 형태의 패킷 전송 지연을 일으킬 수 있다. 특정 형태의 트래픽은 다른 것에 비해 수신 우선권을 보장하기 위한(예: ftp와 AV 전송) 별도의 기능이 필요하다. 라우터에 있어서는 IETF가 개발한 네트웍간의 end-to-end 프로토콜인 RSVP(ReSource reserVation Protocol)가 응용 프로그램으로 하여금 서로 다른 서비스 계층을 위해 필요한 네트웍 자원을 동적으로 예약할 수 있게 해준다. RSVP는 가장 높은 우선권을 받아야 하는 멀티미디어 스트리밍 응용 프로그램에 대해 필요한 만큼의 서비스 질을 보장할 수 있게 해 준다.
RSVP는 receiver-oriented 프로토콜로 IP 멀티캐스트 모델 내에 있는 멀티캐스트 분배 tree에 덧붙여서 자기가 원하는 만큼 요청한 자원들에 대해 예약(reservation)을 요구한다. 이러한 방법을 이용함으로 해서 두 가지 중요한 목표를 이룰 수 있다. 첫번째는 대규모, 동적 그룹들에 대한 확장성이고 두 번째는 각각의 개인이 서로 다른 수준의 예약을 요청할 수 있으므로 이질성을 획득할 수 있다.
여러 형태의 스트리밍 멀티미디어 트래픽은 기존의 데이터들에 비해서 훨씬 데이터의 양이 많다. 그러므로 이러한 데이터는 네트웍을 통해 전송 되기 전에 압축 됨으로써 대역폭의 소비를 줄일 수 있다. 그러나 압축된 비디오 데이터는 전송 중 발생하는 패킷의 손실에 대해 보다 민감하다. 일반적으로 이전에 보낸 프레임과 지금 보내는 프레임이 다를 때만 데이터를 전송하는 interframe 압축을 공통으로 이용하므로 만약에 특정 프레임이 손실되면 다른 프레임은 참조할 프레임이 사라진 것과 같게 된다. 그러나 네트웍 소프트웨어가 보다 지능화 되면 그러한 손실을 어느 정도는 보상할 수 있다.
현재 여러 형태의 표준 압축 기술이 사용 되고 있는데 다음과 같다.
H.261은 처음 ITU에서 화상회의 용으로 개발하였으며 대역폭의 효율성과 적은 지연에 최적화 되어 있다. 반면에 MPEG은 대역폭의 효율성은 떨어지지만 영화 형식의 응용 프로그램에서 요구 되어지는 높은 화질과 편집 기능을 제공한다. Intel에서는 PC를 위한 압축 방법으로 Indeo를 개발하여 제공하는데 디코딩 처리 과정이 매우 적다.
멀티미디어 스트림은 패킷 형태로 네트웍을 통해 전송되므로 수신 시의 패킷의 재 조립이 필요하다. 수신 노드는 여러 개의 데이터 스트림에 대해 특정 용도(영화, 원격교육...)에서는 동기화가 필요하다.
현재 인터넷상에서 제공되는 스트림 서비스의 종류는 크게 온 디맨드와 라이브로 구분할 수 있으며 여러 제품들이 서로 중복되는 기능을 하므로 여기서는 가장 대표적인 응용 프로그램의 특징과 사용법 등에 대해서 살펴본다.
인터넷 전화의 선두 주자이며 가장 많이 이용되고 있는 응용 프로그램으로 TCP/IP기반이다. 단말의 응응프로그램과 어드레싱 서버로 구성되어 있으며 인터넷폰 사용자는 어드레싱 서버에 등록된 사용자와 연결이 가능하다. 연결속도는 14.4, 28.8kbps이며 사운드 카드에 따라 전방향 연결이 가능하다.
특징
최신 버전인 RealAudio Player Plus는 28.8kbps의 네트웍 대역폭 상에서 거의 CD 수준의 음질을 제공하며 전송 지연을 거의 느끼지 못하고 재생, 정지, 되감기, 스킵등의 다양한 오디오 제어가 가능하다. 프로토콜은 UDP를 사용하며 Timecast와 함께 개인의 특정 뉴스만을 받을 수 도 있다. 현재 RealAudio 3.0 beta 버전은 MBONE을 이용할 수 있데 되어 있다. 다음 그림 1은 RealAudio plus의 초기화면이다.
CU-SEEME는 코넬 대학에서 만든 PC용 화상회의 시스템으로 현재는 WhitePine사에서 소스 라이센스를 가져다가 Enhanced-CU-SEEME라는 이름으로 상품화 해서 팔고 있다. Enhanced CU-SEEME는 기존 것에 비해 컬러가 지원되며 보다 다양한 디바이스들을 지원한다.CU-SEEME는 일대일 통신 뿐만 아니라 UNIX에 설치되는 reflector라는 소프트웨어를 이용하여 일대 다자간의 회의가 가능하고 또한 MBONE으로 데이터를 주고 받을 수 도 있다. Enhanced 2.1x 버전은 Crystal Net사의 SFM 컬러코덱과 Digitalk 8.5 ,Voxware 2.4 오디오 코덱을 이용하므로 비디오의 오디오의 질이 이전에 비해 매우 향상되었으며 사운드 카드가 양방향이 지원될 경우 오디오 사용 시 hand free 기능도 이용할 수 가 있다. 리스너가 있어서 자기 PC에 이 데몬을 띄어 놓으면 PC사용 중에 자기에게 연락이 온 것을 알 수 있다. 그림 2는 Enhanced CU-SEEME의 전체 모듈이다.




1995년 10월에 첫 제품이 나왔으며 저속의 대역폭에서는 가장 크고 깨끗한 화면을 볼 수 있는 제품이다. Xing사의 StreamWorks와 더불어 스트림 기술을 이용한 대표적인 제품 중의 하나로 온 디맨드에 매우 적합하다. Wavelet 코딩 기술을 이용하므로 저속에서 self-learnin이 가능해 보다 나은 화면을 볼 수 있으며 28.8kbps에서는 초당 10 프레임 정도까지 볼 수 있다. AVI화일을 movie나 flipbook형태로 인코딩 해서 전송하며 일반적인 그래픽 오버레이 카드를 이용하여 직접 vdo용 화일을 만들 수 있다. 현재 Live 기능을 시험 중에 있으며 같은 대역폭(저속)에서는 스트림웍스 보다 우수한 화질을 제공한다. 그림 3은 VDO 전체 컴포넌트들이다.
인터넷을 통한 스트림 전송의 원조라고 할 수 있으며 서버, 클라이언트, 트랜스미터로 이루어져 있다. 스트림웍스 서버는 주문형 비디오/오디오와 실시간 실황중계 요구를 클라이언트로부터 받아서 제공하는 기능을 한다. Activation 키에 의해 대역폭과 기능들이 결정되며 위에서 언급한 기능 외에도 Live File, Propagation, Stream reduction기능들이 있다. 트랜스 미터는 아날로그 입력(비디오, 카메라)을 받아 이를 MPEG과 LBR로 인코딩 해서 실시간에 인터넷을 통해 스트림웍스 서버로 전송하는 기능을 한다. 스트림웍스 컴포넌트들은 멀티캐스트를 지원하며 현재 까지는 유일하게 비디오의 라이브 중계가 가능하다. 국내에서는 KBS, MBC, YTN등이 이를 이용하여 인터넷으로 동시에 방송을 송출하고 있다. 현재 2.0버전이 나와 있으며 이전 버전에 비해 서버의 구축이 매우 편리하며 클라이언트의 연결 속도에 맞게 자동으로 스트림을 전송할 수 있다. Xing사는 원래 MPEG용 소프트웨어 인코더/디코더를 제작하던 회사로서 Streamworks 클라이언트도 PC의 그래픽 카드가 DCI를 지원하면 화면을 확대해도 깨끗한 화면을 볼 수 있다. 그림 4는 스트림웍스 클라이언트와 MPEG1 full motion화면이다.
미국의 Precept라는 회사에서 개발한 인터넷 브로드 캐스팅 소프트웨어로 Windows NT에 가장 적합하며 Slidecast라는 응용 프로그램이 포함되어 있다. Slidecast는 PC의 발표자료를 오디오와 함께 동기화 시켜 보여주는 기능을 한다. 시스템의 전체 구성은 프로그램 가이드, IP Viwer, IP Server로 구성되어 있다. 프로그램 가이드는 사용자가 방송할 채널을 만드는 기능을 하며 IP Viewer는 프로그램 가이드에서 제공하는 채널을 선택하여 PC상에서 보는 기능을 하며 IP Server는 프로그램 가이드로부터 스케쥴을 받아서 자동으로 지정된 시간에 프로그램을 전송한다. IP TV의 큰 특징은 인터넷상의 브로드캐스팅 뿐만 아니라 멀티캐스팅을 지원하므로 MBONE과의 연결이 가능하다. 프로그램 가이드의 목록에는 실제 MBONE관련 이벤트에 대한 내용이 표시되어 MBONE상의 데이터도 시청할 수 있다. 그림5와 그림6은 IP viewer와 Program Guide 화면이다.
위에서 설명한 새로운 서비스들 외에도 PC와 TV가 결합된 인터캐스트,
VDP(Vide Datagram Protocol)기술을 이용하여 IP 네트웍상에서 MEPG1,
MPEG2, H.261의 스트림을 제공하는 Vosaic
, 그리고 오디오 데이터와 다양한 멀티미디어 데이터를 실시간에 전송하는
넷캐스트 등이 새로운 기술로서
자리자고 있으며 Java와 ActiveX를 이용한 실시간 멀티미디어 응용
프로그램들이 계속 개발되고 있다.
지금까지 스트림 기술의 개요 및 현재 서비스 되고 있는 여러 응용
프로그램에 대해서 살펴 보았다. 향후 몇 년 내에 멀티미디어 네트워킹은
매우 급변할 것이다. 지금의 사용자는 QCIF 형식으로 30 프레임, 또는
CIF 형식으로 초당 15프레임을 볼 수 있다. 이는 이더넷 전체의 10%정도를
사용하는 수준이다. 그러나 앞으로의 네트웍은 100BaseT에서 Gigabit-Ethernet을
통해 ATM이라는 마지막 고지에 도달할 것으로 예측된다. 이는 곳 대역폭의
엄청난 증가를 의미하며 이와 더불어 압축기술 또한 지금보다 훨씬
더 발전할 것이다. PC상에서 MPEG2급의 스트림을 자유 자재로 이용할
날 이 이제 바로 우리 앞에 놓여 있는 것이다.
URL : http://info.internet.isi.edu:80/in -notes/rfc/files/rfc1190.txt
URL : http://info.internet.isi.edu:80/in -notes/rfc/files/rfc1889.txt
URL : http://www.realaudio.com/prognet/rt/p rotocol.txt
URL : http://www.isi.edu/div7/rsvp/pub.html
URL : http://ei.cs.vt.edu/~mm/s95/sspace/H. 261_171.html