본문 바로가기

기술 용어 검색

IPTV의 기본 개념 (VOD 와 IP multicating 그리고 인터..

IPTV의 기본 개념 (VOD IP multicating 그리고 인터넷 방송)

IPTV는 그 개념이 인터넷으로 영상을 보는 것에서 출발 했다. IPTV(Internet Protocol TV)는 영상을 디지털화(압축:Encoding) 하고, 작은 단위(팻킷)로 쪼갠 다음, IP(Internet Protocol)에 연속적(Streaming)으로 전송 하고, 이를 원거리에서 단말기 (Device or STB, PC) 에서 다시 연속적으로 재생(조합 –Decoding)하여 영상을 표시 하는 기술이다.

위에서 보면 나오는 용어들 중에 Encoding, Decoding, Packet, Streaming등의 단어가 나올 것이다. 이는 가장 기본적인 기술 이며 동시에 단어라고 생각 하면 된다. 거기에 어떤 방식으로 또는 어떤 형태의 서비스를 할건지에 따라, Unicast Braodcast로 전송 보내는 방법이 구별 된다.

VOD VS N-VOD

그럼 VOD는 무엇일까이는 서비스의 일종이다. Video ON Demand 의 약자로 의역하자면, “요구하면 바로 영상을 보여준다는 의미 이다. 예를 들어 설명하면, 전통적인 방식의 방송은 어떤 형태인가. 모든 방송의 스케줄은 방송 시간표라고 하는 방송국의 입장에서 만들어 지고 시청자에게 공급되어 진다. 즉 시청자가 보고 싶은 프로그램이 있으면, 그 시간에 TV 앞에 있어야 볼수 있다. 그러나, VOD의 경우는 시청자가 그 방송(영상)에 대한 권한을 가진다. 내가 보고 싶으면 언제든지 볼수 있다는 개념이다. 단순이 보는 것에 그치는 것이 아니라, 일시 정지, 빨리 보기, 다시 보기 및 다양한 정보를 시청자가 맘대로 할 수 있는 서비스 형태 이다. 요즘 인터넷 상의 영화 사이트나, UCC 사이트들이 사용하는 서비스가 거이다 VOD의 개념이다. 보고 싶을 때 본다.라는 것이다. 이런 개념의 확대 되어 NOD(News On Demand), AOD (Audio On Demand)등 다양한 서비스 형태로 발전 되었다. VOD의 대표적인 기술은 UniCast란 전송 방식을 사용 한다

그럼 가끔 나오는 N-VOD는 무엇일까?? Near VOD의 약자 이다. 위에서 언급한 것 같이 VOD는 시청자가 모든 권한을 가진다. 그러나, 그런 VOD의 서비스를 하기 위해서는 많은 양의 정보를 처리 해야 하는 단점이 있다. 예를 들어 10명의 시청자가 같은 내용의 방송을 시청한다고 할 경우 VOD의 경우는 10개의 영상 데이터를 각각 보내야 한다. 이 경우는 시스템의 효율성을 떨어트리는 결과를 발생시킨다. 설치된 시스템의 효율성을 높이며 여러 시청자에게 가장 근접한 VOD 방식의 서비스를 하기 위해서 나온 방법이 N-VOD이다. VOD의 최대 강점은 원하는 시간에 볼 수 있다는 부분(JIT: Just In Time)이다. 그런 강점을 최대한 유지하면서 서비스 하는 방법 이다. 즉 같은 영상을 10분 또는 5분 단위로 각각의 다른 채널에서 방송하여 시청자로 하여금 기다리는 시간을 최대한 줄이는 방법이다. 예를 들어 A라는 영화가 100번 채널에서 2시에 시작되었다면, 소비자는 2시에 채널을 키고 봐야 한다. 그러나 만약 2시 넘어서 TV를 볼 경우 101번에서 25분에 같은 영화를 볼 수 있는 방법 이다. 현재 스카이 라이프에서 보면 같은 영화를 여러 채널에서 상영하는 것을 볼수 있는데, 이것이 N-VOD의 방식이다. 정리 하자면, N-VOD의 경우는 설치되어있는 시스템의 효율성을 극대화 하면서도 많은 시청자가 동시에 이용 할 수 있도록 하는 방법이다.

UniCast VS Broadcast 방식.

UniCast

그럼 VOD를 서비스 하기 위해서 사용되는 전송 방식 Unicast 는 무엇일까? 말 그대로 하나의 방송이란 뜻이다. 즉 한 명의 유저를 위한 유일한(한 개의)방송이란 뜻이다. 시청자가 요구한 데이터(영상)은 그 유저에게만 전달 되는 방식이다. 유저는 그 데이터(영상)에 대한 권한을 모두 가지고 있다. 사용자의 입장에서는 매우 바람직하고 사용하기에 편리한 방식이다. 그러나 서비스 하는 입장에서는 많은 투자 장비와 비용이 발생하는 방법이다. 그러나 궁극적으로 미래의 방송에서 추구 하는 방송의 방법 아닐까 한다.

Broadcast

N-VOD와 같이 방송의 형태로 서비스 하기 위해 사용되는 방식이 Broadcast방식이다. 한 개의 데이터(영상)을 방송의 형태로 전송 보내고 이를 사용자가 공유해서 보는 방식이다. 한 개의 데이터를 가지고 운영하기 때문에 시스템의 효율성을 높일 수 있는 방법이 된다.

VOD Broadcast의 단점.

VOD의 경우는 중복적인 데이터(영상)을 계속적으로 전송 보내야 하는 단점이 있어, 네트워크와 서비스 장비의 효율성 또는 서비스 인원에 맞는 장비를 구축 해야 하는 단점이 있다. 이는 초기 투자 비용을 증가 시키는 부분과 장비의 비효율성의 가능성을 증가 시킨다.

Broadcast의 경우는 사용자가 이용을 하던 안하던 상관없이 그 데이터(영상)는 항상 네트워크에 존재 하게 된다. 즉 시청자의 용과 상관없이 데이터가 항상 네트워크에서 전송되고 있어 네트워크에 많은 양의 트래픽을 발생시켜 네트워크의 효율적인 이용을 방해 합니다.

Broadcast에서 Multicast Broadcast의 차이

Broadcast에서는 Broadcast Multicast로 구분되어 진다. 두가지 방법 다 네트워크에 데이터(영상)을 전송 보내 사용자가 이용하게끔 하는 방식은 같다. 그러나, 그 방법 중 좀더 효율성을 높인 것이 Multicast라고 생각 하면 된다. Broadcast의 경우는 방송중인 데이터가 같은 네트워크에 있는 모든 사용자의 단말기까지 데이터가 전달됩니다. . 사용여부와 상관없이, 그 데이터는 가능한 밑단까지 전송되어 사라지게 됩니다. 이는 전체 네트워크에 과 부화의 문제점을 발생시킵니다.

그러나 Multicast의 경우는 평상시에는 상단의 네트워크 장비 (보통 라우터 또는 L3 스위치)까지만 전송되고, 하단의 시청자 까지는 전달되지 않습니다. 그러다가 소비자의 요구가 있을 경우에만, 그 소비자에게 그 데이터(영상)을 전송하게 됩니다. 이는 네트워크의 효율성을 극대화 하기 위한 방법입니다. Multicast를 지원하기 위해서는 모든 네트워크 장비가 멀티캐스트를 지원하는 장비로 구성되어야 이용 가능 합니다.

인터넷 방송의 시작 (서비스 시작과 뒷이야기)

사실 IPTV란 말은 S사의 멀티 캐스팅되는 제품의 제품명으로 사용된 젓이 있다. 그 당시 아마 98년 쯤으로 기역 된다. 그때는 막 네트워크로 영상을 전송 보내는 기술이 발전하는 단계였다. 기존의 방법은 UNicast Broadcast를 사용 하는 방법이었다. 또한 스트림의 방식 보다는 네트워크 파일 공유 개념의 전송방식이 주로 사용되었다.

Multicast의 서비스 시작

국내에서 Full Multicast로 대규모의 서비스를 구축한 것이 아마 필자가 처음이 아닐까 한다. 그 당시 소규모의 Test 형태의 시스템을 구축은 하였으나, 전체적인 네트워크에 실질적으로 설치하여 서비스 한 것은 아마도 처음이었을 것으로 안다. 대구에 있는 대학교였다. 설치되어 있는 위성TV에서 4개의 채널 영상(아날로그)을 실시간으로 디지털로 변화하여 바로 네트워크에 Mulicast방식으로 방송 보내는 시스템을 설치 한적이 있다. Optibase의 제품을 사용해서 구성하였다. MPEG1 2개 채널과 MPEG2 2개 채널로 구성 하여 서비스 하였다. 처음에는 많은 문제점도 발생하였다. 그 당시 Multicast에 관련된 지식이 전무 한 상태에서 서비스를 하다 보니, 네트워크에서 많은 문제가 발생 했다. 그 당시 그 학교의 네트워크는 시스코 ATM 백본과 라우터를 사용하였는데, 네트워크 상의 장비에서는 Multicast를 지원하였으나, 네트워크 Setting과정에서 Multicast을 세팅 해본 적이 없는 관계로 네트워크 업체에서 고생을 많이 했다. 특히 정상 세팅을 했음에도 불구 하고 Multicast이 되지 않아 많은 고생을 하였다. 추후 그 문제를 해결 했는데 너무나도 어의 없는 곳에서의 문제점이었다. 일반적으로 Multicast은 네트워크의 D Class UDP를 사용한다. 당시 200.0.0.1~4번의 IP와 채널을 사용해서 Multicast을 서비스 하였는데 지원하지 않았다. 나중 그 이유를 알아본 결과 시스코의 네트워크 장비간의 제어 및 정보 교환이 같은 D Class IP를 사용하고 있었다. 즉 같은 IP대를 사용하다 보니 문제가 발생 한 것 이였다. 그 문제를 해결 하기 위해서 3개월을 고생했었는데 너무 허무하게 해결되었다.

본격적인 인터넷 방송의 시작은 어제쯤 일까.

사실 필자의 기역으로는 96년 말부터 알려지기 시작한 것으로 기역 한다. 그 당시에는 Real Network Real Player란 제품과 서비스로 시작되었다. MPEG 4를 중심으로 서비스를 하였다. 화질이나, 음질이 그리 좋은 편은 아니 였고, 단지 영상으로 볼 수 있었다는 것이 장점이었다. 97~98년 부터는 Microsoft도 인터넷 방송에 참여를 하였다. 그것이 현재 가장 많이 사용하는 window media 서비스 이다. 그 당시에는 Netshow Theater란 이름으로 나왔으며, ASF 란 포맷을 주로 사용하여 저 용량의 서비스를 실시 하였다. 그 후 이름이 Window media Server로 변경되었다.

국내에 인터넷 방송이 본격적으로 서비스된 것은 98년부터 이다. 성인 방송을 중심을 인터넷 방송을 시작하였다. 또 그때부터 인터넷 영화관서비스도 본격적으로 진행되었다. 또한 일반인들이 기술보다 먼저 접하게 된 것이 인터넷 방송 이였다. 여러분들은 기역 할지 모르겠다. 박찬호 메이져리그 경기를 인터넷으로 서비스한 시절이 있었다는 것을. 그 당시 인천 방송이 독점 중계권을 가지고 있었는데, 전국 방송은 불가능 하고, 인터넷으로 방송을 시작 하였다. 그때 사용된 제품이 Microsoft의 스트리밍 서비스 제품이었다. 그러나. 접속자가 폭주 하면 방송을 보는 것은 하늘에 별따기 만큼이나 어려웠다. 이유는 간단했다. 추후 언급하겠지만, 인터넷 방송을 보내기 위해서는 네트워크 장비가 지원( M-Bone, Multicast)을 해야 했으나, 거이 불가능 하였기 때문에 Unicast Broadcast의 방식으로 사용 하였다. 100명이든 10,000명이든 박찬호 경기를 보기 위해서 그 사람의 숫자 만큼 데이터가 전송되었다. 동시에 10,000명이 접하게 되면, 네트워크에도 10,000개의 데이터가 움직이다 보니, 결국에는 서비스되지 않는 경우가 많이 발생 하였다. 요즘은 참 많이 발전 한 것 같은 생각이 든다.


영상 전송을 위해 사용되는 다양한 Protocol (통신 규약;원칙, 행동 강령의 의미)

위에서 언급한 Multicast를 지원 받기 위해서는 다양한 기본적인 장비와 더불어 지원해야 하는 Protocol이 있어야 한다.

IP Multicast 필수 사항

1) IP multicast 의 필수 사항

IP Multicast을 하기 위해서는 Data의 전송자와 받는 Client Multicast이 가능한 Router와 네트워크상에 존재 해야 한다. Multicast data를 받기 위해서는 다음과 같은 사항이 필요 하다.

l IP Multicast을 보내고 받기 위해서는 TCP/IP Protocol Stack을 지원해야 한다.

l Multicast Group에 합류하고 Data를 받기 위해서는 IGMP(Internet Group management Protocol) 을 지원해야 한다.

l IP Multicast을 지원하는 프로그램이 있어야 한다.

만약 같은 Address를 가진 Network상에서 Multicast을 할 경우 위의 사항만이 필요 할 것이다. 하지만, 다른 Network 까지 Multicast 데이터를 전송 하기 위해서는 다음과 같은 사항이 필요 하다.

l Transmitter receiver 사이에 존재하는 모든 Router는 반드시 Multicast이 가능해야 한다. 오래된 Router의 경우 Multicast Protocol 을 지원하지 않기 때문에 반드시 Upgrade을 해야 한다.

l 방화벽이 있는 경우 IP Multicast traffic을 위해 제구성 해야 한다.

다음 그림은 Multicast의 일반적인 구성도를 나타낸 것이다.


2) IP Multicast IP Address

IP Multicast의 경우 D Class Internet Protocol Address의 특별한 Multicast Host Group IP를 사용한다. Host Group Address의 범위는 224.0.0.0에서부터 시작되어 239.225.225.225 IP Address범위를 가지게 된다. IP범위는 고정(Permanent) IP 임시 (temporary)IP로 분류되어 있다. 고정 IP 224.0.0.1 IANA( The Internet Assigned Number Authority )에 의해 모든 IP multicast host Group 이 직접 Network에 접속 하기 위해 할당 되어 있고 224.0.0.2의 경우 Lan 상에 있는 Router에 할당 되어 있다. 224.0.0.0에서부터 224.0.0.225은 라우팅 Protocol과 다른 Low level과 유지,보수 Protocol로 할당 되어 있다.

또 다른 범위의 IP , 224.0.13.000에서부터 224.0.13.255 Application 프로그램을 위해서 할당 되어 있다.

Network Multicast의 관계

Multicast 전송에 있어서 Network에 관련된 사항은 가장 핵심 사항 중 하나는 Network에 관련된 사항이다. 아무리 방송 서버나 Client Pc가 성능이 좋다고 해도 Network환경이 좋지 않다면, 만족할만한 화질의 비디오 데이터를 얻을 수 없다. 또한 네트워크가 Multicast를 지원하지 않는 장비로 구성 되어 있다면, Multicast 방법 자체를 사용 할 수 없다.

1) Lan, MBone 의 이해

Lan

일반적으로 사용하는 Network Lan (Local Area Network)라고 하며, 일반적으로 Multicasting기법을 사용했던 Network환경이었다. 이런 환경에서는 높은 품질의 Video Data의 실시간 전송이 가능하며, 동시에 다양한 형태의 사용이 가능했다.

MBone

Multicast Backbone (MBone)은 인터넷 유저에게 Multicast을 전송하기 위한 인터넷의 하부 구조이다. 1992년부터 시작 하여, 지금은 2000이상의 subnet을 가지고 있다. MBone은 가상의 network, 수 많은 Multicast이 가능한 Network User와 연동하여 Multicast Data를 전송 한다. Mbone상에서 Multicast data Internet에 전송될 때에는, Multicast이 가능한 네트워크와 Multicast이 가능하지 않는 Network을 지나 이동하게 된다. 이때 Multicast이 가능한 Network Multicast Island라고 하며, 그 이동 경로를 Tunnel이라고 한다.


2) Network 상에서 IP multicasting의 전송 원리

Multicasting은 일반 방송 즉 라디오나, TV와 같은 전송 방법으로 network 상에 비디오, 오디오를 전송한다. Data를 받고자 하는 Client가 있을 경우 그 client에만 Data가 전송 된다. 그림에서 보면, Content서버에서 Video data를 실시간으로 전송을 하게 되고, Network에 설치된 라우터를 통해 Multicast Data가 다른 네트워크 주소에 Data를 전송하게 된다.

이 경우 Client PC에는 별도의 장비 필요 없이 단순히 Network 와 연결 하는 IP 만 부여 하는 작업 만이 필요하다. 또한 Client Multicast 데이터를 받기 위한 Setting 작업이 필요 없이 Data를 받을 수 있다. 그러나 Multicast Data를 전송 하는 관리자는 Multicast Data를 전송하기 위해서 필수적으로 Setting하고 확인 해야 할 사항이 있다. 우선적으로 Multicast 데이터를 전송하기 위해서 Router Multicast이 가능하도록 Setting되어야 하며, 동시에 multicast에 필요한 Protocol이 지원 되어야 한다. 이런 Multicast Protocol을 이용하여 Multicast 비디오 데이터는 라우터와 라우터 사이 또는 다른 Segment Address를 가진 IP Network사이를 이동하면서 Data를 전송하게 된다.


3. IP Multicast에서 사용되는 Protocol

일반적으로 Data의 전송에는 TCP/IP를 사용한다. TCP/IP Protocol은 일반 데이터의 전송에는 탁월한 전송능력을 가진다. 하지만 Multicast Data Delay나 중단 없이 전송되어야 하며, Multi-Point로 전송 되어야 하는 기능이 있기 때문에 새로운 형태의 Protocol이 필요 하게 되었다.

1) IP Multicast Protocol

1. SDP ( Session Description Protocol )

MBone에서 사용되는 Protocol이다. SDP Client에게 Multicast Data에 포함되어 있는 모든 정보( : Multicast file 이름, 설명, 실행 시간 등 )를 받을 수 있게 한다. 특히 SDP는 다양한 형태의 정보를 같이 보낼 수 있기 때문에 넓은 범위서 사용이 가능하다.

2. IGMP ( the Internet Group Management Protocol )

IGMP Multicast data를 요구하는 Receiver가 전송되어 오는 Multicast Data를 받기 위해 Multicast Group에 접속 하거나, 여러 작업을 하기 위한 Protocol이다.

Multicast Group를 사용하는 이유는 크게 몇 가지가 있다.

1. Multicast Group에 진입과 탈퇴가 자유롭다. – 즉 언제든지 Multicast Data를 받거나 중단 할 수 있다.

2. Multicast Group에 접속한 Receiver가 없으면, 자동으로 network상에서 사라지게 된다.

3. Group은 그 Group 의 구성된 숫자의 조정이 가능하다. 즉 접속 숫자가 많을 경우 자동으로 인지하여, 그 공간을 늘려 준다.

2) Multicast routing Protocol

Multicast Data를 전송하기 위해서는 다양한 Protocol이 있어야 하는데 특히 Router에서 사용되는 Protocol 이 중요 하다고 할 수 있다. Router Multicast Protocol을 지원하지 않는 다면, Multicast Data가 전송 되지 않기 때문이다. 이런 Routing Protocol Network상에 Multicast data가 이동 할 수 있도록 경로를 열어 놓는 작업을 한다. Routing에 사용 되는 Multicast Protocol은 몇 가지가 있다.

1. DVMRP ( Distance Vector Multicast Routing Protocol )

Multicast를 전달하기 위해 처음 만들어진 Protocol이다. DVMRP는 지금 MBone상에서 널리 사용 되고 있는 Protocol이다.

2. MOSPF ( Multicast Open Shortest Path First Protocol )

MOSPF는 일반적으로 Single Domain에서 사용 한다.

3. PIM ( Protocol-Independent Multicast )

protocol은 현재 IETF Work Group에세 개발 중인 protocol 이며, 일부 Router에서 는 이미 지원하고 있는 Protocol이다. PIM은 두 가지 형태의 Operation Mode로 되어 있다.

PIM-Dense Mode ( PIM-DM )

PIM-Sparse Mode ( PIM-SM)

3) High Level Protocols

1. RTP ( Real-Time Transport Protocol )

RTP( Version 2)은 실시간 Data 전송 Application 프로그램을 지원하기 위해 만들어진 Protocol이다. RTP MBone에서 사용 되고 있으며, IETF RTC1889에 의해 정의되어 있다.

2. RTCP ( Real-Time Control Protocol )

RTCP RTP와 연동하여 운영되는 Control Protocol이다. RTCP는 사용되는 Application Performance 의 조정 및 환경 검사에 사용한다.

3. RTSP ( Real-Time Streaming Protocol )

RTSP Multiple data 전송 조정 목적에 사용 할 계획이다.

RTSP RSVP와 연동 하여 사용 한다.

4. RSVP ( Resource Reservation Protocol )

RSVP Internetwork 서비스를 위해 개발된 Protocol 이다.

위에서 언급되지 않았던 다양한 형태의 Protocol이 있으며, 좀더 효율적인 Multicast전송을 위해 지금도 개발 중이다.

'기술 용어 검색' 카테고리의 다른 글

Refactoring  (0) 2010.03.30
정보처리 기술사 공부에 도움이 되는 책들과 사이트  (2) 2010.03.23
웹2.0 은 무엇일까요?  (0) 2010.03.22