KR20100053009A - 캐시 조각 획득시간 기반의 노드 전환을 이용하는 컨텐츠 분산 저장형 멀티미디어 스트리밍 시스템 및 방법 - Google Patents

캐시 조각 획득시간 기반의 노드 전환을 이용하는 컨텐츠 분산 저장형 멀티미디어 스트리밍 시스템 및 방법 Download PDF

Info

Publication number
KR20100053009A
KR20100053009A KR1020080111950A KR20080111950A KR20100053009A KR 20100053009 A KR20100053009 A KR 20100053009A KR 1020080111950 A KR1020080111950 A KR 1020080111950A KR 20080111950 A KR20080111950 A KR 20080111950A KR 20100053009 A KR20100053009 A KR 20100053009A
Authority
KR
South Korea
Prior art keywords
cache
node
streaming
nodes
acquisition time
Prior art date
Application number
KR1020080111950A
Other languages
English (en)
Other versions
KR101128293B1 (ko
Inventor
장현민
김경환
전재식
Original Assignee
에스케이텔레콤 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 에스케이텔레콤 주식회사 filed Critical 에스케이텔레콤 주식회사
Priority to KR1020080111950A priority Critical patent/KR101128293B1/ko
Publication of KR20100053009A publication Critical patent/KR20100053009A/ko
Application granted granted Critical
Publication of KR101128293B1 publication Critical patent/KR101128293B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23106Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/237Communication with additional data server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/437Interfacing the upstream path of the transmission network, e.g. for transmitting client requests to a VOD server

Abstract

본 발명은 캐시 조각 획득시간 기반의 노드 전환을 이용하는 컨텐츠 분산 저장형 멀티미디어 스트리밍 시스템 및 방법에 관한 것이다. 본 발명은 분할된 캐시 조각들을 여러 노드의 캐시 서버에 분산 저장하고, 클라이언트의 스트리밍 요청을 받은 노드가 각 노드의 캐시 조각 총 획득시간을 확인하여 총 획득시간이 가장 작은 노드로 스트리밍 노드를 전환함으로써, 스트리밍을 수행하는 노드가 다른 노드들로부터 캐시 조각을 취합하는데 걸리는 시간을 단축하여 네트워크의 전체 성능과 서비스 품질 측면에서 가장 효율적인 스트리밍 서비스를 제공할 수 있다.
스트리밍, CDN, 멀티미디어 컨텐츠, 노드, 캐시 서버, 캐시 조각, 획득시간, 노드 전환

Description

캐시 조각 획득시간 기반의 노드 전환을 이용하는 컨텐츠 분산 저장형 멀티미디어 스트리밍 시스템 및 방법{System and Method for Multimedia Streaming of Distributed Contents Using Node Switching Based on Cache Segment Acquisition Time}
본 발명은 멀티미디어 스트리밍 서비스에 관한 것으로서, 좀더 구체적으로는 스트리밍 서비스를 제공하고자 하는 멀티미디어 컨텐츠를 여러 캐시 조각으로 분할하여 여러 노드의 캐시 서버에 분산 저장하고 클라이언트의 스트리밍 요청을 받은 노드가 각 노드의 캐시 조각 총 획득시간을 확인하여 총 획득시간이 가장 작은 노드로 스트리밍 노드를 전환하는 스트리밍 시스템과 방법에 관한 것이다.
인터넷 기술의 발전에 따라 인터넷을 통해 동영상이나 애니메이션 등의 멀티미디어 컨텐츠를 실시간으로 제공받는 스트리밍(streaming) 서비스가 활성화되고 있다. 스트리밍이란 멀티미디어 컨텐츠 파일을 모두 전송 받은 후에 재생하는 다운로드 방식과 달리, 전체 파일의 일정량만 전송되면 이를 버퍼링하면서 실시간으로 재생하는 기법을 말한다. 버퍼링된 부분을 재생하는 동안 나머지 부분을 지속적으로 전송 받기 때문에, 전송되는 데이터가 마치 끊임없고 지속적인 물 흐름처럼 처 리된다고 하여 '스트리밍' 이라는 명칭이 붙여졌다. 이러한 스트리밍 서비스에는 실시간 방송 서비스나 주문형 비디오 서비스가 있다.
한편, UCC(user created contents)를 비롯한 동영상 컨텐츠의 폭발적인 증가에 따라 최근 인터넷 트래픽이 급속히 늘고 있다. 인터넷 대역폭(공급)의 성장 속도가 인터넷 트래픽(수요)의 성장 속도를 따라가지 못하는 상황에 직면한 것이다. 2007년의 경우만 보더라도 글로벌 인터넷 트래픽은 75% 성장했지만 인터넷 대역폭은 44% 증가하는데 그친 것으로 보고되고 있다.
이러한 인터넷 대역폭 부족 현상을 해결하기 위한 방안으로 CDN(contents delivery network) 기술이 관심을 끌고 있다. CDN 기술은 능동적인 트래픽 분산을 이용하여 네트워크의 평균 가동률을 높이고 피크 트래픽을 낮추어 인터넷 망을 더욱 효율적으로 활용할 수 있는 기술이다. CDN 기술에 따르면, 컨텐츠 제공자(contents provider)는 클라이언트에게 제공할 컨텐츠를 지역적으로 분산된 다수의 서버에 복제하고, 클라이언트의 요청이 있을 경우 최적의 서버로부터 컨텐츠를 제공받을 수 있도록 한다.
또한, 스트리밍과 같은 데이터 서비스에서 가입자단의 데이터 전송속도를 높이기 위해 많이 활용하고 있는 기술 중의 하나가 캐시(cache) 기술이다. 일반적인 캐시 구현에서는 캐싱되는 오브젝트가 다양한 크기의 데이터 단위로 이루어지고, 이를 바탕으로 캐시 서버는 데이터를 관리하기 위한 여러 통계들을 만들게 된다.
하지만 이러한 방법은 캐시 서버의 다양한 종류의 자원(RAM 크기, 저장공간, 원래 컨텐츠 제공자 서버에서의 총 컨텐츠 용량 등), 인터넷 전송속도의 불안정성, 사용자의 컨텐츠 사용에 대한 다양한 행동특성(다운로드나 스트리밍 도중의 중단 등), 캐시 대상인 데이터의 다양한 크기 등을 고려할 때, 캐시 서버가 다루는 오브젝트 단위가 컨텐츠 크기에 종속될 경우 다음과 같은 여러 문제가 발생한다.
1. 크기가 큰 파일과 작은 파일을 다룰 때 일정하지 않은 컴퓨팅 자원의 활용으로 인한 비효율
2. 크기가 다른 파일을 요청한 사용자에 대한 일정하지 않은 서비스 품질(QoS)
3. 해당 파일에 대한 사용자 요청이 정상적으로 종료되지 않은 경우 생기는 분할손(즉, 사용자 요청에 의해 전체 파일을 캐시 서버나 메모리에 저장하였으나 중간에 중단되는 경우에는 전체적인 효율을 떨어뜨리게 됨)
이러한 문제를 해결하기 위한 방안으로, 크기가 다양한 대용량 멀티미디어 컨텐츠를 크기가 일정한 여러 개의 캐시 조각(segment)으로 분할하고 이를 여러 노드의 캐시(cache) 서버에 분산 저장하는 기술이 이미 알려져 있다. 이에 따르면, 데이터 분산 저장을 통해 전체 시스템의 부하를 분산할 수 있고, 단일 서버 하드웨어의 물리적 성능(RAM, CPU, 네트워크 대역폭 등)을 하나 이상의 캐시 서버인 것처럼 동작하게 하여 단일 서버의 하드웨어 장벽(예컨대 최대 메모리 크기) 이상의 사양을 활용할 수 있다.
그러나 종래의 컨텐츠 분산 저장형 스트리밍 기술은 데이터의 분산 저장에 초점이 맞추어져 있을 뿐으로, 클라이언트의 스트리밍 요청이 있을 때 어느 노드에서 어떤 방식으로 인접 노드들의 캐시 조각들을 취합하여 스트리밍하는 것이 가장 효율적인지에 대한 연구가 부족한 실정이다.
따라서 본 발명은 종래의 문제점을 해결하기 위한 것으로, 컨텐츠 분산 저장형 멀티미디어 스트리밍 서비스에서 클라이언트의 스트리밍 요청이 있을 때 네트워크의 전체 성능과 서비스 품질 측면에서 최대한 효율적인 방식으로 캐시 조각들을 취합하고 스트리밍을 수행할 수 있는 멀티미디어 스트리밍 시스템과 방법을 제공하기 위한 것이다.
이러한 목적을 달성하기 위하여, 본 발명은 캐시 조각 획득시간 기반의 노드 전환을 이용하는 컨텐츠 분산 저장형 멀티미디어 스트리밍 시스템 및 방법을 제공한다.
본 발명에 따른 컨텐츠 분산 저장형 멀티미디어 스트리밍 시스템은 멀티미디어 컨텐츠를 제공하는 컨텐츠 제공자와 상기 컨텐츠 제공자와 다수의 클라이언트 사이에 지역적으로 분산되어 분포하는 다수의 노드들을 포함하며, 각각의 상기 노드는 상기 멀티미디어 컨텐츠가 분할된 캐시조각을 저장하는 캐시 서버를 구비하고, 멀티미디어 컨텐츠는 적어도 둘 이상의 캐시 조각들로 분할되어 적어도 둘 이상의 상기 캐시 서버에 분산 저장된다. 상기 노드들 중 상기 클라이언트로부터 스트리밍 요청을 받은 클라이언트 접속 노드의 상기 캐시 서버는 상기 노드들의 캐시 조각 총 획득시간을 확인하여 상기 캐시 조각 총 획득시간이 가장 작은 노드를 스트리밍 노드로 결정하며, 상기 스트리밍 노드의 상기 캐시 서버는 다른 노드들로부 터 상기 캐시 조각들을 획득하여 상기 클라이언트에 상기 컨텐츠를 스트리밍한다.
본 발명의 컨텐츠 분산 저장형 멀티미디어 스트리밍 시스템에 있어서, 각각의 상기 노드는 상기 노드들의 상기 캐시 조각 총 획득시간에 대한 정보를 저장하는 인덱스 서버를 더 구비할 수 있으며, 상기 클라이언트 접속 노드의 상기 인덱스 서버는 상기 캐시 서버에 상기 캐시 조각 총 획득시간에 대한 정보를 제공할 수 있다.
또한, 상기 클라이언트 접속 노드의 상기 캐시 서버는 상기 스트리밍 노드가 결정되면 상기 스트리밍 노드에 노드 전환 메시지를 전송할 수 있다.
또한, 각각의 상기 캐시 조각은 상기 노드들 중 적어도 둘 이상에 중복 저장될 수 있다.
한편, 본 발명에 따른 컨텐츠 분산 저장형 멀티미디어 스트리밍 방법은, 멀티미디어 컨텐츠를 제공하는 컨텐츠 제공자와 다수의 클라이언트 사이에 다수의 노드들이 지역적으로 분산되어 분포하며 상기 멀티미디어 컨텐츠가 분할된 캐시 조각을 각각 캐시 서버에 분산 저장하는 다수의 노드들 중 특정 노드에 상기 클라이언트가 접속하여 스트리밍을 요청하면 상기 클라이언트 접속 노드에서 상기 클라이언트의 스트리밍 요청을 수신하는 단계와, 상기 클라이언트로부터 상기 노드들 중 클라이언트 접속 노드에 스트리밍 요청이 오면 상기 클라이언트 접속 노드의 상기 캐시 서버가 상기 노드들의 캐시 조각 총 획득시간을 확인하여 상기 캐시 조각 총 획득시간이 가장 작은 노드를 스트리밍 노드로 결정하는 단계와, 상기 스트리밍 노드의 상기 캐시 서버가 다른 노드들로부터 상기 캐시 조각들을 획득하여 상기 클라이 언트에 상기 컨텐츠를 스트리밍하는 단계를 포함한다.
본 발명의 컨텐츠 분산 저장형 멀티미디어 스트리밍 방법에 있어서, 각각의 상기 노드는 상기 노드들의 상기 캐시 조각 총 획득시간에 대한 정보를 저장하는 인덱스 서버를 더 구비할 수 있으며, 상기 클라이언트 접속 노드의 상기 캐시 서버는 상기 인덱스 서버에 상기 캐시 조각 총 획득시간에 대한 정보를 요청하여 제공받을 수 있다.
또한, 상기 클라이언트 접속 노드의 상기 캐시 서버는 상기 스트리밍 노드가 결정되면 상기 스트리밍 노드에 노드 전환 메시지를 전송할 수 있다.
또한, 각각의 상기 캐시 조각은 상기 노드들 중 적어도 둘 이상에 중복 저장될 수 있다.
본 발명은 분할된 캐시 조각들을 여러 노드의 캐시 서버에 분산 저장하고, 클라이언트의 스트리밍 요청을 받은 노드가 각 노드의 캐시 조각 총 획득시간을 확인하여 총 획득시간이 가장 작은 노드로 스트리밍 노드를 전환함으로써, 스트리밍을 수행하는 노드가 다른 노드들로부터 캐시 조각을 취합하는데 걸리는 시간을 단축하여 네트워크의 전체 성능과 서비스 품질 측면에서 가장 효율적인 스트리밍 서비스를 제공할 수 있는 장점이 있다.
이하, 첨부 도면을 참조하여 본 발명의 실시예를 보다 상세하게 설명하고자 한다. 실시예를 설명함에 있어서 본 발명이 속하는 기술 분야에 잘 알려져 있고 본 발명과 직접적으로 관련이 없는 기술 내용에 대해서는 가급적 설명을 생략한다. 이는 불필요한 설명을 생략함으로써 본 발명의 핵심을 흐리지 않고 더욱 명확히 전달하기 위함이다. 한편, 첨부 도면을 통틀어 동일하거나 대응하는 구성요소에는 동일한 참조부호를 부여한다.
도 1은 본 발명에 따른 멀티미디어 스트리밍 시스템의 구성을 개략적으로 나타내는 도면이고, 도 2는 본 발명의 실시예에 따른 멀티미디어 스트리밍 시스템의 구성 및 컨텐츠 분산 저장 방식을 보여주는 도면이다.
도 1을 참조하면, 본 발명의 멀티미디어 스트리밍 시스템은 컨텐츠 제공자(CP)와 다수의 클라이언트(C1, C2, C3, C4, C5, …, Cn) 사이에 지역적으로 분산되어 분포하는 다수의 노드(node; N1, N2, N3, …, Nn)들을 포함한다.
컨텐츠 제공자(CP)는 스트리밍 서비스를 제공하고자 하는 멀티미디어 컨텐츠의 원본을 저장하는 서버로, 근원 서버(origin server), 멀티미디어 서버, 컨텐츠 서버 등으로도 불린다. 컨텐츠 제공자(CP)는 멀티미디어 컨텐츠의 복제본을 미리 결정된 컨텐츠 분산 저장 정책에 따라 각각의 노드(N1, N2, N3, …, Nn)에 분산 저장한다. 멀티미디어 컨텐츠는 UCC를 비롯한 동영상 컨텐츠, 온라인 교육, 영화, 방송, 음악 등 대용량 미디어 컨텐츠, 녹화 및 생방송 컨텐츠 등을 포함한다.
도 2에 예시된 바와 같이, 각각의 노드(N1, N2, N3, N4)는 캐시 서버(cache server; CS1, CS2, CS3, CS4)를 구비한다. 캐시 서버는 스트리밍을 수행하기 위해 국제표준규격 IETF RFC2326의 RTSP(real-time streaming protocol)와 IETF RFC3550의 RTP(real-time transport protocol)/RTCP(RTP control protocol)를 지원한다.
멀티미디어 컨텐츠(MC)는 여러 캐시 조각(segment; S1 ~ S8)들로 분할되어 여러 노드의 캐시 서버에 분산 저장된다. 이때, 멀티미디어 컨텐츠의 모든 캐시 조각은 적어도 두 개 이상의 노드에 분산되어 저장되고, 저장을 담당하는 노드의 캐시 서버에는 적어도 하나 이상의 캐시 조각이 저장된다. 도 2의 예에서 멀티미디어 컨텐츠(MC)는 8개의 캐시 조각(S1 ~ S8)으로 분할되어 4개의 노드(N1 ~ N4)에 분산 저장되는데, 이때 각 노드의 캐시 서버(CS1 ~ CS4)는 2개씩 캐시 조각을 저장한다.
멀티미디어 컨텐츠(MC)의 캐시 조각 분할은 미리 결정된 특정 규칙에 따라 이루어지며, 컨텐츠 분할 규칙은 프레임 단위, 시간 단위, 용량 단위 등 다양한 방식으로 결정될 수 있다. 또한, 컨텐츠 분할 규칙은 컨텐츠 유형별로 다르게 결정될 수도 있고 컨텐츠 유형에 상관없이 일괄적으로 결정될 수도 있다. 또한, 컨텐츠 분할 규칙은 각 노드의 저장용량에 비례하여 결정될 수도 있고 노드 저장용량에 무관하게 결정될 수도 있다.
각각의 노드(N1, N2, N3, N4)는 또한 인덱스 서버(index server; IS1, IS2, IS3, IS4)를 더 구비한다. 인덱스 서버는 멀티미디어 컨텐츠(MC)의 캐시 조각(S1 ~ S8)들이 어느 노드에 저장되어 있는지, 노드간 각 캐시 조각의 획득시간이 얼마인지 등에 대한 캐시 조각 저장정보를 저장한다. 이에 대해서는 구체적인 예를 들어 뒤에서 자세히 설명한다.
한편, 클라이언트(C1)는 스트리밍 데이터를 전송 받아 일시 저장하는 하나 이상의 버퍼(B1)를 구비한다. 클라이언트(C1)는 스트리밍 데이터를 수신하고 디코딩하여 재생할 수 있는 각종 전자기기를 망라한다. 예를 들어, 클라이언트(C1)는 컴퓨터, 셋탑 박스, 개인정보 단말기(PDA), 휴대폰, 게임기, MP3 플레이어 등이 가능하다.
캐시 서버의 세부 구성을 나타낸 도 3을 참조하여 캐시 서버에 대하여 좀더 자세히 설명한다. 각 캐시 서버(CS1)는 스트리밍 제어부(11), 컨텐츠 캐시 조각 저장부(12), 캐시 조각 획득시간 확인부(13), 노드간 통신부(14)를 포함하여 구성될 수 있다.
스트리밍 제어부(11)는 클라이언트(C1)의 스트리밍 요청을 수신하고 요청 받은 컨텐츠를 클라이언트에게 스트리밍 방식으로 전송한다. 컨텐츠 캐시 조각 저장부(12)는 컨텐츠가 분할된 캐시 조각들 중 자신의 노드에 할당된 캐시 조각을 저장하고, 스트리밍 제어부(11)를 통해 클라이언트(C1)에게 전송한다. 캐시 조각 저장량 확인부(13)는 스트리밍 제어부(11)가 클라이언트(C1)의 스트리밍 요청을 수신하면 인덱스 서버(IS1)에 접속하여 각 노드의 캐시 조각 총 획득시간을 확인하고, 캐시 조각 획득시간이 가장 작은 노드를 스트리밍 노드로 결정한다. 노드간 통신부(14)는 자신의 노드가 스트리밍 노드이면 다른 노드들(N2~N4)로부터 캐시 조각들을 획득하여 스트리밍 제어부(11)를 통해 클라이언트(C1)에게 전송하고, 스트리밍 노드가 아니면 컨텐츠 캐시 조각 저장부(12)에 저장된 캐시 조각을 스트리밍 노드의 캐시 서버로 전송한다.이어서, 도 4를 참조하여 본 발명의 실시예에 따른 멀티미디어 스트리밍 시스템과 방법에 대하여 좀더 구체적으로 설명한다. 도 4는 본 발명의 실시예에 따른 멀티미디어 스트리밍 방법을 나타내는 흐름도이다.
클라이언트(C1)가 특정 노드에 접속하여 스트리밍 요청을 하면, 그 노드(N1) 의 캐시 서버(CS1)는 클라이언트(C1)의 스트리밍 요청을 수신한다(단계 S11). 이하, 클라이언트(C1)의 스트리밍 요청을 수신한 특정 노드(N1)를 '클라이언트 접속 노드'라 지칭하여 다른 노드와 구별하기로 한다. 후술하는 바와 같이, 실제로 스트리밍을 수행하는 노드는 클라이언트 접속 노드가 아닌 다른 노드가 될 수도 있는데, 스트리밍을 실제 수행하는 노드는 '스트리밍 노드'라 지칭하기로 한다.
클라이언트 접속 노드(N1)의 캐시 서버(CS1)는 스트리밍 요청을 받은 컨텐츠의 캐시 조각 저장정보를 인덱스 서버(IS1)에 요청한다(단계 S12). 캐시 조각 저장정보는 각 노드가 저장하고 있는 캐시 조각의 보유 목록과 노드간 캐시 조각의 획득시간에 대한 정보를 포함한다. 아래의 표 1은 캐시 조각 저장정보에 대한 예이다.
노드 보유 캐시 조각 획득대상 캐시 조각 획득시간 총 획득시간
N1 S1, S2 S3, S4 12 35
S5, S6 9
S7, S8 14
N2 S3, S4 S5, S6 7 31
S7, S8 11
S1, S2 13
N3 S5, S6 S7, S8 15 41
S1, S2 14
S3, S4 12
N4 S7, S8 S1, S2 8 37
S3, S4 19
S5, S6 10
위의 표 1에서 보는 바와 같이, 캐시 조각 획득시간은 다른 노드에 저장 중인 캐시 조각을 획득하는데 소요되는 시간이며, 이는 노드간 거리, 각 노드의 상태와 성능, 네트워크 상태 등의 함수이다.
예를 들어, 노드 N1은 자신이 보유하지 않은 캐시 조각 S3, S4를 획득하기 위해 시간 12를 필요로 하며, 모든 캐시 조각 S3 내지 S8을 획득하는데 걸리는 총 획득시간이 35이다. 다른 관점에서 설명하면, 노드 N1이 보유 중인 캐시 조각 S1, S2를 다른 노드 N2, N3, N4에서 각각 획득하는데 소요되는 획득시간은 각각 13, 14, 8이다. 이로부터 알 수 있듯이, 캐시 조각의 총 획득시간이 작을수록 그 노드의 캐시 조각 취합 성능이 우수함을 의미한다.
스트리밍 요청을 받은 컨텐츠의 캐시 조각 저장정보를 인덱스 서버(I1)가 캐시 서버(CS1)에 제공하면(단계 S13), 클라이언트 접속 노드(N1)의 캐시 서버(CS1)는 각 노드의 캐시 조각 총 획득시간을 확인하고 총 획득시간이 가장 작은 노드를 결정한다(단계 S14). 위 표 1의 예에서 캐시 조각 총 획득시간이 가장 작은 노드는 두 번째 노드(N2)이다.
캐시 조각 총 획득시간이 가장 작은 노드(N2)가 결정되면, 클라이언트 접속 노드(N1)는 결정된 노드(N2)로 스트리밍 노드를 전환한다(단계 S15). 노드 전환은 클라이언트 접속 노드(N1)의 캐시 서버(CS1)가 노드 전환 메시지를 전송하고 상대편 노드(N2)의 캐시 서버(CS2)가 이를 수신함으로써 이루어진다. 노드 전환 메시지를 전송할 때 클라이언트 접속 노드(N1)는 스트리밍을 요청한 클라이언트 정보와 컨텐츠 정보를 함께 제공한다.
스트리밍 노드(N2)의 캐시 서버(CS2)는 캐시 조각들을 저장하고 있는 나머지 노드(N1, N3, N4)들에 각각 캐시 조각들을 요청한다(단계 S16, S17, S18). 이때, 스트리밍 노드(N2)의 캐시 서버(CS2)는 캐시 조각들을 요청하기 위해 캐시 조각 저장정보를 자신의 인덱스 서버(IS2)로부터 얻을 수도 있고 클라이언트 접속 노드(N1)로부터 제공받을 수도 있다.
스트리밍 노드(N2)로부터 캐시 조각 요청을 수신한 노드(N1, N3, N4)들의 캐시 서버(CS1, CS3, CS4)는 각각 자신이 저장하고 있는 캐시 조각들을 스트리밍 노드(N2)에 전송한다(단계 S19, S20, S21).
다른 노드(N1, N3, N4)들로부터 캐시 조각들을 획득한 스트리밍 노드(N2)의 캐시 서버(CS2)는 스트리밍을 요청한 클라이언트(C1)에게 컨텐츠를 스트리밍한다(단계 S22).
스트리밍 노드(N3)로부터 스트리밍 데이터를 수신하기 시작한 클라이언트(C1)는 스트리밍 데이터를 버퍼(B1)에 버퍼링하면서 디코딩하여 컨텐츠를 재생한다.
이상 설명한 바와 같이, 클라이언트(C1)로부터 스트리밍 요청을 받은 클라이언트 접속 노드(N1)가 스트리밍을 수행하는 것이 아니라, 캐시 조각 총 획득시간이 가장 작은 노드(N2)가 스트리밍을 수행하도록 함으로써, 네트워크의 전체 성능과 서비스 품질 측면에서 가장 효율적인 스트리밍 서비스가 이루어질 수 있다.
한편, 멀티미디어 컨텐츠(MC)의 각 캐시 조각은 적어도 둘 이상의 서로 다른 노드에 중복 저장될 수도 있는데, 이 경우에도 클라이언트 접속 노드(N1)는 각 노드의 캐시 조각 총 획득시간을 확인하고 총 획득시간이 가장 작은 노드를 스트리밍 노드로 결정한다.
아래의 표 2는 그러한 경우의 예로, 멀티미디어 컨텐츠는 8개의 캐시 조각(S1 ~ S8)으로 분할되어 4개의 노드(N1 ~ N4)에 분산 저장되는데, 각각의 캐시 조각은 2개씩 중복하여 서로 다른 노드에 저장된다.
노드 보유 캐시 조각 획득대상 획득시간 총 획득시간
캐시 조각 노드
N1 S1, S2, S3, S4 S5, S6 N2 15 15+12=27
N3 20
S7, S8 N3 12
N4 18
N2 S3, S4, S5, S6 S7, S8 N3 17 16+15=31
N4 16
S1, S2 N4 15
N1 19
N3 S5, S6, S7, S8 S1, S2 N4 14 14+12=26
N1 19
S3, S4 N1 18
N2 12
N4 S7, S8, S1, S2 S3, S4 N1 21 20+15=35
N2 20
S5, S6 N2 17
N3 15
위 표 2의 예에서 노드 N1은 자신이 보유하지 않은 캐시 조각 S5, S6을 노드 N2나 N3으로부터 획득할 수 있는데, 노드 N2로부터 캐시 조각 S5, S6을 획득하려면 시간 15가 소요되고, 노드 N3으로부터 획득하려면 시간 20이 소요된다. 마찬가지로, 캐시 조각 S7, S8을 노드 N3으로부터 획득하려면 시간 12가 소요되고, 노드 N4로부터 획득하려면 시간 18이 소요된다.
따라서 노드 N1이 가장 효율적으로 캐시 조각을 획득하려면, 캐시 조각 S5, S6은 노드 N2로부터 획득하고 캐시 조각 S7, S8은 노드 3으로부터 획득해야 한다. 즉, 노드 N1의 캐시 조각 총 획득시간은 노드 N2로부터 캐시 조각 S5, S6을 획득하는데 걸리는 시간 15와 노드 N3으로부터 캐시 조각 S7, S8을 획득하는데 걸리는 시간 12를 합산한 27이 된다.
이와 같은 식으로 각 노드의 캐시 조각 총 획득시간을 확인해 보면, 총 획득시간이 가장 작은 노드는 N3이 되며, 따라서 노드 N3이 스트리밍 노드로 결정된다. 스트리밍 노드 N3은 캐시 조각 S5, S6, S7, S8을 보유하고 있으며, 나머지 캐시 조각 S1, S2를 노드 N4로부터 획득하고, 캐시 조각 S3, S4를 노드 N2로부터 획득한다.
이상과 같이, 본 명세서와 도면에는 본 발명의 바람직한 실시예에 대하여 개시하였으며, 비록 특정 용어들이 사용되었으나, 이는 단지 본 발명의 기술 내용을 쉽게 설명하고 발명의 이해를 돕기 위한 일반적인 의미에서 사용된 것이지, 본 발명의 범위를 한정하고자 하는 것은 아니다. 여기에 개시된 실시예 외에도 본 발명의 기술적 사상에 바탕을 둔 다른 변형예들이 실시 가능하다는 것은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 자명한 것이다.
본 발명은 UCC를 비롯한 동영상 컨텐츠, 온라인 교육, 영화, 방송, 음악 등 대용량 미디어 컨텐츠, 녹화 및 생방송 컨텐츠, IPTV 등 다양한 형태로 나타나고 있는 각종 멀티미디어 스트리밍 서비스에 유용하게 이용할 수 있다.
도 1은 본 발명에 따른 멀티미디어 스트리밍 시스템의 구성을 개략적으로 나타내는 도면이다.
도 2는 본 발명의 실시예에 따른 멀티미디어 스트리밍 시스템의 구성 및 컨텐츠 분산 저장 방식을 보여주는 도면이다.
도 3은 도 2의 캐시 서버 세부 구성을 보여주는 도면이다.
도 4는 본 발명의 실시예에 따른 멀티미디어 스트리밍 방법을 나타내는 흐름도이다.
<도면의 주요부분에 대한 설명>
CP: 컨텐츠 제공자
N1, N2, N3, N4, …, Nn: 노드
C1, C2, C3, C4, C5, …, Cn: 클라이언트
MC: 멀티미디어 컨텐츠
S1, S2, S3, S4, S5, S6, S7, S8: 컨텐츠 캐시 조각
CS1, CS2, CS3, CS4: 캐시 서버
IS1, IS2, IS3, IS4: 인덱스 서버
B1: 버퍼
11: 스트리밍 제어부
12: 컨텐츠 캐시 조각 저장부
13: 캐시 조각 획득시간 확인부
14: 노드간 통신부

Claims (8)

  1. 멀티미디어 컨텐츠를 제공하는 컨텐츠 제공자;
    상기 컨텐츠 제공자와 다수의 클라이언트 사이에 지역적으로 분산되어 분포하는 다수의 노드들에 각각 구비되고, 상기 멀티미디어 컨텐츠가 분할된 캐시 조각을 저장하는 캐시 서버;
    를 포함하며,
    상기 노드들 중 상기 클라이언트로부터 스트리밍 요청을 받은 클라이언트 접속 노드의 상기 캐시 서버는 상기 노드들의 캐시 조각 총 획득시간을 확인하여 상기 캐시 조각 총 획득시간이 가장 작은 노드를 스트리밍 노드로 결정하며,
    상기 스트리밍 노드의 상기 캐시 서버는 다른 노드들로부터 상기 캐시 조각들을 획득하여 상기 클라이언트에 상기 컨텐츠를 스트리밍하는 것을 특징으로 하는 컨텐츠 분산 저장형 멀티미디어 스트리밍 시스템.
  2. 청구항 1에 있어서,
    각각의 상기 노드에 구비되어 상기 노드들의 상기 캐시 조각 총 획득시간에 대한 정보를 저장하는 인덱스 서버;
    를 더 포함하며,
    상기 클라이언트 접속 노드의 상기 인덱스 서버는 상기 캐시 서버에 상기 캐시 조각 총 획득시간에 대한 정보를 제공하는 것을 특징으로 하는 컨텐츠 분산 저 장형 멀티미디어 스트리밍 시스템.
  3. 청구항 1에 있어서,
    상기 클라이언트 접속 노드의 상기 캐시 서버는 상기 스트리밍 노드가 결정되면 상기 스트리밍 노드에 노드 전환 메시지를 전송하는 것을 특징으로 하는 컨텐츠 분산 저장형 멀티미디어 스트리밍 시스템.
  4. 청구항 1에 있어서,
    각각의 상기 캐시 조각은 상기 노드들 중 적어도 둘 이상에 중복 저장되는 것을 특징으로 하는 컨텐츠 분산 저장형 멀티미디어 스트리밍 시스템.
  5. 멀티미디어 컨텐츠를 제공하는 컨텐츠 제공자와 다수의 클라이언트 사이에 지역적으로 분산되어 분포하며 상기 멀티미디어 컨텐츠가 분할된 캐시 조각을 각각 캐시 서버에 분산 저장하는 다수의 노드들 중 특정 노드에 상기 클라이언트가 접속하여 스트리밍을 요청하면, 상기 클라이언트 접속 노드에서 상기 클라이언트의 스트리밍 요청을 수신하는 단계;
    상기 클라이언트 접속 노드의 상기 캐시 서버가 상기 노드들의 캐시 조각 총 획득시간을 확인하여 상기 캐시 조각 총 획득시간이 가장 작은 노드를 스트리밍 노드로 결정하는 단계;
    상기 스트리밍 노드의 상기 캐시 서버가 다른 노드들로부터 상기 캐시 조각 들을 획득하여 상기 클라이언트에 상기 컨텐츠를 스트리밍하는 단계;
    를 포함하는 것을 특징으로 하는 컨텐츠 분산 저장형 멀티미디어 스트리밍 방법.
  6. 청구항 5에 있어서,
    각각의 상기 노드는 상기 노드들의 상기 캐시 조각 총 획득시간에 대한 정보를 저장하는 인덱스 서버를 더 구비하며,
    상기 클라이언트 접속 노드의 상기 캐시 서버는 상기 인덱스 서버에 상기 캐시 조각 총 획득시간에 대한 정보를 요청하여 제공받는 것을 특징으로 하는 컨텐츠 분산 저장형 멀티미디어 스트리밍 방법.
  7. 청구항 5에 있어서,
    상기 클라이언트 접속 노드의 상기 캐시 서버는 상기 스트리밍 노드가 결정되면 상기 스트리밍 노드에 노드 전환 메시지를 전송하는 것을 특징으로 하는 컨텐츠 분산 저장형 멀티미디어 스트리밍 방법.
  8. 청구항 5에 있어서,
    각각의 상기 캐시 조각은 상기 노드들 중 적어도 둘 이상에 중복 저장되는 것을 특징으로 하는 컨텐츠 분산 저장형 멀티미디어 스트리밍 방법.
KR1020080111950A 2008-11-12 2008-11-12 캐시 조각 획득시간 기반의 노드 전환을 이용하는 컨텐츠 분산 저장형 멀티미디어 스트리밍 시스템 및 방법 KR101128293B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080111950A KR101128293B1 (ko) 2008-11-12 2008-11-12 캐시 조각 획득시간 기반의 노드 전환을 이용하는 컨텐츠 분산 저장형 멀티미디어 스트리밍 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080111950A KR101128293B1 (ko) 2008-11-12 2008-11-12 캐시 조각 획득시간 기반의 노드 전환을 이용하는 컨텐츠 분산 저장형 멀티미디어 스트리밍 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20100053009A true KR20100053009A (ko) 2010-05-20
KR101128293B1 KR101128293B1 (ko) 2012-03-23

Family

ID=42278179

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080111950A KR101128293B1 (ko) 2008-11-12 2008-11-12 캐시 조각 획득시간 기반의 노드 전환을 이용하는 컨텐츠 분산 저장형 멀티미디어 스트리밍 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR101128293B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101407934B1 (ko) * 2013-08-22 2014-06-17 에스케이텔레콤 주식회사 컨텐츠 전송 시스템, 이를 위한 방법 및 장치
KR102019654B1 (ko) * 2018-10-02 2019-09-09 전남대학교산학협력단 적응형 스트리밍 서버를 전환하기 위한 방법

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101999719B1 (ko) 2014-10-29 2019-07-12 에스케이텔레콤 주식회사 컨텐츠 관리장치 및 방법

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100375121B1 (ko) * 1999-12-23 2003-03-08 주식회사 아라기술 웹 콘텐츠 전송 제어 방법
JP2003228534A (ja) * 2001-11-30 2003-08-15 Ntt Docomo Inc 情報配信システム、記述データ配信装置、コンテンツ位置管理装置、データ変換装置、受信端末装置、情報配信方法
KR100427143B1 (ko) * 2003-01-17 2004-04-14 엔에이치엔(주) 스트리밍 데이터 전송 및 다운로드 방법
KR100906230B1 (ko) * 2006-09-21 2009-07-07 파이로웍스(주) 지연시간을 최소화한 스트리밍 서비스 방법 및 시스템

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101407934B1 (ko) * 2013-08-22 2014-06-17 에스케이텔레콤 주식회사 컨텐츠 전송 시스템, 이를 위한 방법 및 장치
KR102019654B1 (ko) * 2018-10-02 2019-09-09 전남대학교산학협력단 적응형 스트리밍 서버를 전환하기 위한 방법

Also Published As

Publication number Publication date
KR101128293B1 (ko) 2012-03-23

Similar Documents

Publication Publication Date Title
KR101104729B1 (ko) 최적의 캐시조각 획득방식을 이용하는 컨텐츠 분산 저장형 멀티미디어 스트리밍 시스템 및 방법
US8880650B2 (en) System and method for storing streaming media file
US11233839B2 (en) System and method of minimizing network bandwidth retrieved from an external network
US8745262B2 (en) Adaptive network content delivery system
US8392615B2 (en) Dynamic variable rate media delivery system
KR101301004B1 (ko) 컨텐츠 분산 저장형 멀티미디어 스트리밍 시스템 및 방법
US8966097B1 (en) Fractional redundant distribution of media content
EP2359536B1 (en) Adaptive network content delivery system
US9860335B2 (en) Method, device and system for delivering live content
US20110191447A1 (en) Content distribution system
EP2288085A1 (en) P2p based method, device and system for playing media
CN102055718B (zh) 一种在http streaming系统中实现分层请求内容的方法,装置和系统
KR20100055297A (ko) 분산 저장된 컨텐츠의 리다이렉티드 url을 이용한 동시 멀티미디어 스트리밍 시스템 및 방법
KR101128293B1 (ko) 캐시 조각 획득시간 기반의 노드 전환을 이용하는 컨텐츠 분산 저장형 멀티미디어 스트리밍 시스템 및 방법
CN102497389A (zh) 一种iptv 中基于大雨伞缓存算法的流媒体协作缓存管理方法及系统
Lin Enhancing P2P live streaming performance by balancing description distribution and available forwarding bandwidth in P2P streaming network
CN107645475B (zh) 异质网络中的文件资源分发系统与方法
KR101088022B1 (ko) Vcr기능조작을 사용자 선호도로 반영하는 컨텐츠 분산 저장형 멀티미디어 스트리밍 시스템 및 방법
US9386056B1 (en) System, method and computer readable medium for providing media stream fragments
KR101112572B1 (ko) 캐시 조각 저장량 기반의 노드 전환을 이용하는 컨텐츠 분산 저장형 멀티미디어 스트리밍 시스템 및 방법
KR20100059117A (ko) 컨텐츠 분산형 스트리밍 시스템, 캐시서버 및 컨텐츠 스트리밍 방법
KR101137248B1 (ko) 이동 에이전트를 이용하는 컨텐츠 분산 저장형 멀티미디어 스트리밍 시스템 및 방법
KR20100055296A (ko) 분산 저장된 컨텐츠의 리다이렉티드 url을 이용한 순차적 멀티미디어 스트리밍 시스템 및 방법
Satsiou et al. Efficient caching of video content to an architecture of proxies according to a frequency-based cache management policy
KR20100055298A (ko) 컨텐츠의 지역별 선호도 기반의 분산 저장 방법, 관리 서버, 및 멀티미디어 스트리밍 시스템

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
N231 Notification of change of applicant
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20150309

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160308

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180312

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190219

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20200220

Year of fee payment: 9