오늘은 스트리밍 세번째 시간으로 RTMP 와 RTSP 에 대해 알아보도록 하겠습니다.
RTMP / RTSP
2000년대초 어도비 (Adobe) 사의 플래시(Flash) 는 인터넷에서 사용자 경험과 RIA (Rich Internet Application) 측면에서
가장 앞서던 기술이었습니다. 기존 MS사의 윈도우 미디어 (Windows Media)가 대부분이었던 웹 비디어 시장이
점차 HTTP 다운로드 방식의 플래시 비디오로 넘어가게 되었습니다.
이때부터 사용자 제작 컨텐츠 (User Created Contents, UCC) 의 확산으로 플래시 비디오는 웹의 표준으로까지 급성장하게 됩니다.
2000년대 인터넷을 잠시 떠올려보시면 인터넷 사이트 대부분은 플래시와 플래시 비디오로 서비스를 많이 했던 것이 기억나실껍니다.
그러나, 플래시 비디오 방식의 단점이 있었으니, 보안과 저작권에 대한 문제를 안고 있었다는 것입니다.
PC의 임시 저장 공간 (인터넷 익스플로러 등으로 정보 검색 후 쌓이는 웹페이지, 이미지, 비디오 데이터들) 에 남아 있는 콘텐츠들로 인해
누구라도 복제할 수 있고, 재배포도 가능한 우려를 낳게 됩니다.
이에 어도비 (Adobe) 사에서는 전통적인 스트리밍 방식의 RTMP 프로토콜을 공개합니다.
웹을 통해 1시간 가량의 드라마, 영화 수백 편을 서비스한다 가정하고, 프로그레시브 다운로드 (Progressive Download) 방식으로 사이트를
구축하게 되면 다운로드 속도는 느리고, 보고 싶은 장면부터 볼 수 없는 등 불만이 늘어날 것입니다. 다운로드 방식으로 서비스 하므로
보안에도 상당히 취약하게 됩니다.
이런 문제를 해결하기 위해 RTMP/RTSP 스트리밍은 기본적으로 아래 그림과 같이 서로 다른 비트레이트 (Bitrate) 로 인코딩 된 동영상 파일을
3~4개 서버에 저장하여 제공함으로서 클라이언트는 재생 중간에 원하는 화질로 교체할 수 있게 됩니다.
* 이미지 출처 : http://www.jwplayer.com/blog/what-is-video-streaming/
이 방식은 전체 파일을 서버에서 보내는 것이 아니라 클라이언트가 시청하려는 부분의 몇 프레임만을 전송합니다.
즉, 시청자는 가장 보려고 하는 장면을 찾아 클릭하면, 기다리는 시간 없이 바로 그 부분의 프레임부터 재생하게 되고,
지나간 프레임은 자동으로 삭제되어, 순간 시점의 프레임만을 보게 됩니다. 클라이언트 측에 저장되는 파일이 없으므로 보안 문제도 자연스럽게 해결됩니다.
RTMP/RTSP 서비스를 하기 위해서는 스트리밍 서버가 필요한데, 대표적 유료소프트웨어로는 FMS (Flash Media Server) 와
Wowza Stream Engine (3.x 버전 이하에서는 Wowza Media Server) 가 있습니다.
PC 환경에서는 Adobe Flash Player (ex. JWplayer) 를 이용하고, 스마트폰, 스마트패드 기기에서는 HTML5 기반에서 동작하는 내장 플레이어를 이용하여 재생합니다.
이러한 RTMP/RTSP 스트리밍은 이러닝, VOD 서비스, LIVE 중계방송, CF/이벤트 영상 등 다양한 분야에서 가장 많이 사용합니다.
● 용어정리
RTMP (Real Time Messaging Protocol)
– 실시간 메시지 전송 프로토콜이다.
– 어도비 시스템즈 (Adobe Systems) 사의 독점 컴퓨터 통신 규약이다.
– 오디오, 비디오 및 기타 데이터를 인터넷을 통해 스트리밍 할때 사용한다.
– 포트번호 1935번을 사용한다.
RTSP (Real Time Streaming Protocol)
– IETF (Internet Engineering Task Force) 가 1998년에 개발한 통신 규약이다.
– 스트리밍 데이터를 제어하기 위한 방법을 제공한다.
– 오디오, 비디오 등 멀티미디어 데이터를 포함하는 미디어 서버를 원격 조작하기 위한 프로토콜이다.
– 명령어는 Play, Pause 와 같이 VCR 동작하고 비슷하며, 시간 정보를 바탕으로 서버에 접근한다.
– 실제 미디어 스트리밍 데이터를 전송하지 않고, RTP 규약을 사용하여 전송 계층으로 실제 오디오/비디오 데이터를 전송한다.
– RTSP 규약은 HTTP 규약하고 비교해 볼 때, 문법이나 동작은 비슷하지만, HTTP가 무상태형 (Stateless) 인 반면 RTSP 는 상태형 (Stateful) 규약이다.
– 포트번호는 554번을 사용한다.
RTMFP (Real Time Media Flow Protocol)
– 낮은 지연 UDP 스트리밍과 여러 Adobe Flash Player 간의 P2P 통신이 가능하고, 다양한 라이브 실시간 통신을 가능하게 한다.
RTMP/RTSP 를 이용한 스마일서브 제공하는 서비스 상품
1. PC 와 모바일 VOD 스트리밍 서비스
– 플래시+모바일 VOD 스트리밍 (Wowza) http://www.cloudv.kr/rew1/cdn/stream_vod01.html
2. PC LIVE 중계 서비스
– 플래시 LIVE http://www.cloudv.kr/rew1/cdn/stream_live01.html
3. 위 두 가지 서비스를 결합한 서비스
– 플래시 VOD + LIVE http://www.cloudv.kr/rew1/cdn/stream_union01.html
4. 모바일 LIVE 서비스는 단독서버에서 구축해드립니다. (라이센스 별도 계약)
– 모바일 LIVE (단독서버) http://www.cloudv.kr/rew1/cdn/cdn_stream_only.html
– 위 상품은 Wowza Media Server / Wowza Media Engine 스트리밍 서버에서 서비스 합니다.
– 상품 문의 : (주)스마일서브 CDN 사업팀 : 직통) 070-7451-2353~4번 / 메일) cdn(at)smileserv.com
[polldaddy rating=”7739789″]