KR20100123659A - 전자적 콘텐츠를 저장하고 배포하는 방법 및 시스템 - Google Patents

전자적 콘텐츠를 저장하고 배포하는 방법 및 시스템 Download PDF

Info

Publication number
KR20100123659A
KR20100123659A KR1020100045530A KR20100045530A KR20100123659A KR 20100123659 A KR20100123659 A KR 20100123659A KR 1020100045530 A KR1020100045530 A KR 1020100045530A KR 20100045530 A KR20100045530 A KR 20100045530A KR 20100123659 A KR20100123659 A KR 20100123659A
Authority
KR
South Korea
Prior art keywords
network
fragments
file
network station
station
Prior art date
Application number
KR1020100045530A
Other languages
English (en)
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 톰슨 라이센싱
Publication of KR20100123659A publication Critical patent/KR20100123659A/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/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4788Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25808Management of client data
    • H04N21/25841Management of client data involving the geographical location of the client
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • 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/433Content storage operation, e.g. storage operation in response to a pause request, 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/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/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
    • 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/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47202End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting content on demand, e.g. video on demand
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/632Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing using a connection between clients on a wide area network, e.g. setting up a peer-to-peer communication via Internet for retrieving video segments from the hard-disk of other client devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17336Handling of requests in head-ends

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Human Computer Interaction (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

콘텐츠 배포 네트워크는 콘텐츠를 저장하고 검색하기 위해 적응된 적어도 두 개의 네트워크 스테이션들을 갖는다. 콘텐츠는 상이한 네트워크 스테이션들에 걸쳐 분사된 프래그먼트들로 분할된다. 네트워크에 추가의 네트워크 스테이션이 부가될 때, 부가된 네트워크 스테이션은 미리 정해진 최대 거리 내의 다른 네트워크 스테이션들로부터 희망하는 콘텐츠의 어떤 프래그먼트들이 이용가능한지를 판정한다. 미리 정해진 최대 거리 내의 다른 네트워크 스테이션들로부터 희망하는 콘텐츠의 모든 프래그먼트들이 이용가능하지 않은 경우, 부가된 네트워크 스테이션은 미리 정해진 최대 거리보다 더 멀리 있는 네트워크 스테이션으로부터 희망하는 콘텐츠의 누락 프래그먼트들의 세트로부터 무작위 프래그먼트를 다운로딩한다. 이와는 달리, 부가된 네트워크 스테이션은 미리 정해진 최대 거리 내에 위치되어 부가된 네트워크 스테이션에 가장 가까운 거리를 갖는 한편, 완전한 파일을 재구성하는데 요구되는 희망하는 콘텐츠의 모든 프래그먼트들을 이용가능하게 하는 네트워크 스테이션들의 세트를 결정한다. 다음에, 부가된 네트워크 스테이션은 가장 멀리 위치된 네트워크 스테이션들의 이전에 결정된 세트 중 그 네트워크 스테이션으로부터 희망하는 콘텐츠의 프래그먼트를 다운로딩한다.

Description

전자적 콘텐츠를 저장하고 배포하는 방법 및 시스템{METHOD AND SYSTEM FOR STORING AND DISTRIBUTING ELECTRONIC CONTENT}
본 발명은 네트워크를 통해 전자적 콘텐츠를 배포하고, 저장하며 검색하는 방법 및 시스템에 관한 것이다. 특히, 본 발명은 프래그먼트들로 분할된 콘텐츠의 상이한 부분들을 효율적으로 위치시키는 것에 관한 것이다.
명료성 및 간소화를 위해, 다음의 설명은 VoD(video-on-demand) 서비스들을 지칭한다. 그러나, 본 발명은 파일을 서비스하는데 사용되는 임의의 일반적인 네트워크에도 적용될 수 있다. 특히, 파일들이 비디오 파일을 반드시 가질 필요는 없다.
네트워크 내에 분포된 셋톱 박스들에만 기초하는 CDN(content delivery network)을 통한 주문형(on-demand) 비디오의 전달이 최근 도입되었다. 일반적으로, VoD 서비스에서, 셋톱 박스들로도 칭해지는 관리된 디바이스들의 세트는 비디오 콘텐츠를 저장할 수 있다. 셋톱 박스들은 또한 이 콘텐츠를 다른 셋톱 박스들에게 업로딩할 수 있다. 각각의 비디오는 서브스트림(substream)들이라고도 칭해지는 다수의 상보형 프래그먼트(complementary fragment)로 분할된다. 비디오를 재생하기 위해서, 셋톱 박스는 모든 서브스트림들이 특정 셋톱 박스에서 이용가능할 때까지 누락된(missing) 서브스트림들을 다운로드하는 것이 필요하다.
프래그먼트들, 또는 서브스트림들은 네트워크의 셋톱 박스들에 무작위로 저장될 수 있다. 파일을 검색하기 위해, 클라이언트들로부터의 요청들은 요청된 파일의 프래그먼트들을 저장하는 가장 가까운 박스들로 재전송(redirected)된다. 파일을 요청하는 클라이언트는 파일의 모든 프래그먼트들을 완벽하게 다운로드할 수 있거나 또는, 예를 들면, 스트리밍될 비디오 파일의 경우에 순서가 정해진 방식(ordered manner)으로 각각의 개별 프래그먼트의 스트리밍을 요청할 수 있다.
그러나, 파일들의 프래그먼트들을 무작위로 배포하게 되면 셋톱 박스들로의 프래그먼트들의 할당이 비효율적으로 되고, 따라서, 요청된 파일의 전달을 위한 비용이 증가될 수 있다. 예를 들면, 비디오 파일의 하나의 프래그먼트는 동일 비디오의 다른 프래그먼트들보다 요청 클라이언트로부터 더 멀리 위치될 수 있는 한편, 요청 클라이언트에 비교적 가까운 두 개의 셋톱 박스들은 동일 프래그먼트들을 호스팅(host)한다. 이 예에서, 동일한 프래그먼트들을 호스팅하는 두 개의 이웃하는 셋톱 박스는 서로로부터 누락 프래그먼트들을 다운로드할 수 없지만, 아마도 매우 멀리 떨어진 또 다른 셋톱 박스로부터 콘텐츠를 다운로드해야 한다. 이 시나리오는, 요청 클라이언트에 이웃하는 셋톱 박스들이 파일의 모든 요구되는 프래그먼트들을 제공할 수 있는 시나리오에 비해, 요청 클라이언트 및 훨씬 멀리 위치된 셋톱 박스 간에 몇몇 불필요한 네트워크 트래픽을 발생시킬 수 있다. 비교적 원거리의 호스트들로의 네트워크 트래픽은, 특히 다수의 허브 또는 라우터를 거쳐야 할 필요가 있거나, 네트워크 트래픽이 상이한 도메인들에 걸쳐서 라우팅될 필요가 있을 때, 부족한(scarce) 네트워크 리소스들을 점유할 수 있다.
다른 식으로 언급되지 않는 한, 표현 "거리(distance)"는, 예를 들면, 라우터 홉(hop)들, 이용가능한 대역폭, 또는 송신 지연에 관련된 지리적 거리, 네트워크 거리라는 의미로 이하의 설명을 통해 상호교환적으로 사용된다. 용어 거리는 또한 네트워크 비용, 즉, 파일의 프래그먼트를 호스팅하는 네트워크 디바이스로부터 파일 또는 그 파일의 프래그먼트를 요청한 네트워크 디바이스로 데이터를 전송하기 위한 비용을 지칭할 수 있다. 네트워크 비용은 라우터 레벨에서 도메인들을 건너가기 위한 비용을 고려함으로써 또는 트래버스된(traversed) 라우터들의 수를 고려함으로써 계산될 수 있다. 비용은 또한 "네트워크 부하"와 연관될 수 있는데, 즉, 비용은 박스들 간의 데이터 경로에서 네트워크 노드들의 수가 증가할 때 증가한다. 네트워크 비용은 또한 일시 또는 네트워크의 세그먼트를 통해 현재 상호 교환되는 데이터의 양에 의존하여 동적으로 변경될 수 있다.
콘텐츠를 콘텐츠 배포 네트워크 내에 위치시키기 위한 하나의 알려진 알고리즘은 k-PUFLP, 즉, "k-Product Uncapacitated Facility Location Problem" 알고리즘으로서 알려져 있다. 이 알고리즘은 예를 들면 A. Klose, A. Drexl의 "Facility location models for distribution system design" European Journal of Operational Research, vol. 162, no. 1, pp. 4-29, 2005에 개시되어 있다. k-PUFLP 알고리즘은 "중앙 집중화(centralized)" 알고리즘인데, 즉, 중앙 엔티티(entity)는 네트워크 내의 모든 셋톱 박스들의 위치에 관해 알고 있다. 네트워크에 새로운 셋톱 박스가 부가될 때는 언제나, 셋톱 박스들 간의 파일들의 배포는 모든 셋톱 박스들에 대해 재계산될 필요가 있다. 셋톱 박스들에 콘텐츠를 위치시키고, 대체시키고, 개편(reshuffling)하는 것 또한 많은 비용이 들기 때문에, 이 k-PUFLP 알고리즘은, 셋톱 박스들이 클라이언트들로서 그리고 호스트들로서 행동하는(act) 콘텐츠 배포 네트워크에서의 효율적인 콘텐츠 배치(placement)에는 적절하지 않다.
각각의 셋톱 박스가 중앙 제어 인스턴스(instance)에 의존해야만 하지 않고서도 올바른 결정을 함으로써 전체적인 배치 프로세스에 참가하도록, 최적화되고 분산된 데이터 배치를 위한 방법 및 시스템을 제공하는 것이 바람직하다. 다음에서, 용어 "네트워크 스테이션"은 셋톱 박스와 상호교환적으로 사용된다.
모든 셋톱 박스들의 위치가 알려져 있다고 가정하면, 그러한 콘텐츠 배포 서비스의 글로벌 비용을 최소화하기 위해 "양호한" 서브스트림 또는 프래그먼트를 모든 셋톱 박스에 할당하기 위한 방법을 제공하는 것이 본 발명의 목적이다.
본 발명의 콘텐츠 배치를 위한 방법은 박스들 간의 네트워크 비용/거리를 고려한다. 특히, 박스들을 설정하기 위해 서브스트림들 또는 프래그먼트들의 배포는 자신의 이웃하는 박스들까지의 네트워크 거리/비용 및 이들 이웃하는 박스들에 의해 어떤 콘텐츠가 이미 저장되어 있는지를 고려한다. 본 발명의 방법의 결과는 로컬 스토리지(storage)에 대해 적절한 서브스트림들 또는 프래그먼트들을 선택하는 것을 통해 각각의 셋톱 박스에 대해 로컬 비용을 최소화한다.
본 발명의 하나 또는 그 이상의 실시예들에 따라, 각각의 셋톱 박스는, 예를 들면, 제한된 스토리지 능력을 고려하여, 서브스트림들 또는 프래그먼트들의 총 수 중 단지 하나의 서브스트림 또는 프래그먼트를 저장하는 것으로 가정된다. 그러나, 스트림들 또는 프래그먼트들의 크기는 변할 수 있다. 또한, 서브스트림들 또는 프래그먼트들은 파일의 연속적인 구성요소들 또는 부분들의 시퀀스를 구성할 필요는 없다.
본 발명의 방법은 적어도 두 개의 네트워크 스테이션을 갖는 네트워크를 통해 전자적 콘텐츠를 배포하는데 사용될 수 있다. 네트워크 스테이션들은 콘텐츠를 저장하고 저장된 콘텐츠를 검색하기 위해 적응되어 있다. 저장된 콘텐츠는 파일들로 조직되고, 여기서 파일들은 프래그먼트들로 분할된다. 주어진 파일의 프래그먼트들의 총 수는 주어진 파일을 재구성하기 위해 요구된다. 주어진 파일의 하나 또는 그 이상의 프래그먼트들은 각각의 상이한 네트워크 스테이션들에 저장된다. 이 방법에 따라, 네트워크에 추가의 네트워크 스테이션이 추가될 때, 그 추가된 네트워크 스테이션은 미리 정해진 최대 거리 내에 위치된 네트워크의 다른 네트워크 스테이션들로부터 주어진 파일의 어떤 프래그먼트들이 이용가능한지를 판단한다. 표현 "주어진 파일"은 고유하고 모호하지 않게 식별가능한 파일을 표시하는데 사용된다. 본 발명을 하나의 특정 파일 또는 하나의 특정 파일 유형으로 제한하는 것을 의미하는 것은 아니다. 미리 정해진 최대 거리 내에 위치된 네트워크의 하나 또는 그 이상의 네트워크 스테이션들로부터 주어진 파일의 모든 프래그먼트들이 이용가능하지 않은 경우, 그 추가된 네트워크 스테이션은 미리 정해진 최대 거리보다 더 떨어진 추가의 네트워크 스테이션으로부터 주어진 파일의 누락 프래그먼트들의 세트 중에서 무작위(random) 프래그먼트를 다운로드한다. 미리 정해진 최대 거리 내에 위치된 네트워크의 하나 또는 그 이상의 네트워크 스테이션들로부터 주어진 파일의 모든 프래그먼트들이 이용가능한 경우, 그 추가된 네트워크 스테이션은 미리 정해진 최대 거리 내에 위치된 네트워크 스테이션들의 세트를 결정한다. 그렇게 결정된 네트워크 스테이션들의 세트는 추가된 네트워크 스테이션에 가장 가깝게 위치된 그런 네트워크 스테이션들을 포함하는 한편, 전체적으로, 완전한 파일을 재구성하는데 요구되는 주어진 파일의 모든 프래그먼트들을 이용가능하게 한다. 다음에, 추가된 네트워크 스테이션은 가장 멀리 위치된 이전에 결정된 네트워크 스테이션들의 세트 중에서 그 네트워크 스테이션으로부터 주어진 파일의 프래그먼트를 다운로드한다.
본 발명의 방법의 일 실시예에서, 더 추가된 네트워크 스테이션은 파일들의 프래그먼트들을 저장하였는지 여부와 파일들의 어떤 프래그먼트들이 현재 저장되었는지를 판정한다.
본 발명의 방법의 또 다른 실시예에서, 더 추가된 네트워크 스테이션은 초기에 저장된 콘텐츠를 전혀 포함하지 않는다.
본 발명의 방법의 또 다른 실시예에서, 네트워크 스테이션들 중 어느 것도 주어진 파일의 모든 프래그먼트들을 저장하지 않는다.
미리 정해진 최대 거리보다 더 떨어진 네트워크 스테이션은 파일의 모든 프래그먼트들을 호스팅하는 콘텐츠 서버이거나, 또는 추가의 네트워크 스테이션들의 그룹 중 하나 또는 그 이상의 네트워크 스테이션들일 수 있다는 것을 주목해야 한다.
본 발명의 방법의 또 다른 실시예에서, 콘텐츠 서버는, 네트워크의 초기화 시에, 어떤 네트워크 스테이션에 의해 어떤 프래그먼트들이 저장될 것인지를 결정한다. 초기화 프로세스는 또한 콘텐츠 서버의 제어 하에서 콘텐츠의 프리푸쉬(prepush)라고 여겨질 수 있다. 네트워크 초기화가 종료되면, 콘텐츠의 추가의 배포는 셋톱 박스들로부터의 개별 요청들에 의존할 수 있다. 콘텐츠의 추가 배포는 또한 개별 셋톱 박스들의 제어하에서 프리페치(pre-fetch)로서 고려될 수 있다.
본 발명에 따른 전자적 콘텐츠 배포 시스템은 적어도 두 개의 네트워크 스테이션들을 갖는 네트워크를 포함한다. 네트워크 스테이션들은 상기에 추가로 설명된 방법을 수행하도록 적응된다.
본 발명에 따른 전자적 콘텐츠 배포 시스템의 네트워크 스테이션은 커맨드들 및 데이터를 보내고 수신하기 위한 네트워크 인터페이스를 포함할 수 있다. 네트워크 스테이션은 마이크로프로세서 및 프로그램 및 데이터 메모리를 더 포함할 수 있다. 데이터 메모리는 휘발성 메모리뿐만 아니라 비휘발성 메모리를 포함하며, 특히 플래시 메모리 및 자기 또는 광 디스크 스토리지를 포함할 수 있다. 네트워크 스테이션의 프로그램 메모리는 상기에 추가로 설명된 방법 단계들을 수행하도록 프로그래밍될 수 있다.
본 발명의 일 실시예에서, 네트워크 스테이션은 적시에 그리고 순서가 있는 방식으로, 주어진 파일의 프래그먼트들의 스트리밍을 위해 적응된다. 또한, 본 발명에 따른 네트워크 스테이션은 파일의 재생 또는 재구성을 위해 주어진 파일의 프래그먼트들을 수신하도록 적응될 수 있다. 바람직한 실시예에서, 네트워크 스테이션은 주어진 파일의 수신된 프래그먼트들을 버퍼링하는 한편 이미 수신된 부분들을 재생하거나 재구성하도록 적응된다.
본 발명의 방법의 결과, 어떤 임의로 선택된 셋톱 박스에 대해, 파일을 보완(complementing)하는데 요구되는 프래그먼트들을 저장하는 다른 셋톱 박스들까지의 거리가 최소가 되도록 파일 프래그먼트들이 배치된다. 어떤 프래그먼트를 국부적으로 저장할 것인가를 선택하는 것은 이웃하는 셋톱 박스들에 의해 이미 저장된 프래그먼트들에 기초한다.
일 실시예에서, 방법은 이웃하는 셋톱 박스들과 이들의 각각에 저장된 콘텐츠에 대한 새롭게 부가된 셋톱 박스의 제한된 인식을 고려한다. 그러나, 새롭게 부가된 셋톱 박스는 주어진 파일을 재구성하는데 얼마나 많은 프래그먼트들이 요구되는지를 안다. 새롭게 부가된 셋톱 박스는 각각의 인접한(immediate) 이웃들에서 어떤 프래그먼트들이 이용가능한지를 판단하고, 로컬 스토리지를 위해 하나 또는 그 이상의 누락 프래그먼트들을 다운로드한다. 선택된 하나 또는 그 이상의 프래그먼트들은 중앙 서버로부터 다운로드되거나, 또는 더 멀리 위치된 다른 셋톱 박스들로부터 다운로드될 수 있다. 각각의 셋톱 박스가 파일의 단지 하나의 프래그먼트만을 저장하고 있는 경우, 판정에 대해 고려되는 이웃들의 수는 파일의 프래그먼트들의 수에서 1을 차감한 것이다.
프래그먼트들은 크기에 있어, 바이트 기준으로 실질적으로 동일할 수 있거나, 또는, 비디오 또는 오디오 파일들의 경우에, 재생의 듀레이션(duration)에 따라 선택될 수 있는데, 즉, 실질적으로 동일한 재생 듀레이션을 가질 수 있다. 그러나, 더 큰 스토리지를 갖거나 또는 더 높은 대역폭을 갖거나 또는 업로드하는데 전체 비용이 더 낮은 셋톱 박스들은 저장을 위해 더 많은 프래그먼트를 취할 수 있다. 결정은 어떤 파라미터, 예를 들면, 네트워크 부하 분산, 또는 셋톱 박스마다 또는 네트워크 세그먼트마다의 네트워크 트래픽 비용 등이 최적화될 것인지에 의존한다.
도면들을 참조하여 본 발명이 후술될 것이다.
도 1은 본 발명에 따른 예시적 시스템도.
도 2는 새롭게 부가된 셋톱 박스에 파일 프래그먼트들을 배포하는 것을 도시하는 개략도.
도 3은 본 발명에 따른 예시적 셋톱 박스의 블록도.
첨부 도면들에서 동일하거나 유사한 구성요소들은 동일한 참조 번호로 참조된다.
도 1은 본 발명에 따른 시스템의 일 예를 도시한다. 시스템은 콘텐츠 서버(101), 트랙커(102) 및 다수의 셋톱 박스(103, 104)를 포함한다. 콘텐츠 서버(101)는 콘텐츠를 준비하고, 저장하며 셋톱 박스들(103, 104)로 송신하는 것을 담당한다. 콘텐츠 서버(101)는 중앙 서버일 뿐만 아니라 일반적인 콘텐츠 전달 네트워크 서비스일 수 있다. 이 도면에 도시된 예시적 실시예에서, 비트토런트형 피어 검색(BitTorrent-like peer discovery)은, 트랙커(102)가 활성 셋톱 박스들의 리스트들을 이들에게 송신함으로써 모든 셋톱 박스들을 접속하는 것을 담당한다. 그러나, 임의의 다른 검색 프로토콜이 사용될 수 있다고 가정된다. 또한, 셋톱 박스들(103, 104)은 초기에는 어떠한 서브스트림도 저장하지 않는다. 물론, 셋톱 박스들(103, 104)은, 예를 들면, 네트워크 내의 셋톱 박스의 위치 변화에 기인하여, 초기화 전에 콘텐츠를 저장할 수 있다는 것을 유의해야 한다. 셋톱 박스들(103, 104)은 어떤 서브스트림이 저장되어야 하는지를 결정한 다음, 그렇게 결정된 서브스트림을 다운로드하기 위해 규정된 프로토콜을 따라야 한다.
새로운 셋톱 박스(104)가 네트워크에 참가(join)할 때, 그 새로운 셋톱 박스는 요청을 트랙커(102)에 송신한다. 네트워크에 참가하는 새로운 셋톱 박스(104)는 도면에서 "박스 b"로 표시되어 있다. 전술한 바와 같이, 예시적 실시예에서, 새롭게 추가된 셋톱 박스(104)의 로컬 스토리지는 초기에 비어 있다. 트랙커(102)로의 요청은 점선 화살표로 표시된 "1"로 표시되어 있다. 이 요청은 또한 셋톱 박스에 저장된 서브스트림들 중의 하나가 쓸모없게 될 때 송신될 수 있다. 이 경우에, 박스는 쓸모없는 것을 대체하기 위해 새로운 서브스트림을 요청할 필요가 또한 있다.
비트토런토 프로토콜과 유사하게, 예시적 시스템에서의 트랙커(102)는 모든 박스들을 접속하는 것을 담당한다. 이를 위해, 트랙커는 모든 활성 셋톱 박스들의 인덱스를 유지할 수 있다. 새롭게 부가된 셋톱 박스(104)로부터의 요청을 트랙커(102)가 수신하면, 이 트랙커(102)는 활성 셋톱 박스들(103)의 리스트를 다시 송신한다. 활성 셋톱 박스들(103)의 리스트를 다시 송신하는 것은 도면에서 점선 화살표로 표시된 "2"로 표시되어 있다. 이것은 셋톱 박스들(103, 104)의 오버레이 네트워크를 구축하는 결과를 가져온다. 트랙커가 없는(tracker-less) 아키텍처, 예를 들면, 분산형 해시 테이블(distributed hash table; DHT) 또는 순수(pure) 분산형 아키텍처가 사용될 수도 있다는 것을 유의하자.
새롭게 부가된 셋톱 박스(104; 박스 b)에 의해 활성 셋톱 박스들(103)의 리스트가 수신되면, "박스 b"는 이 리스트 내에 있는 모든 셋톱 박스들(103)에 대한 자신과의 거리를 측정하고, 다른 셋톱 박스들(103)이 실질적으로 어떤 서브스트림을 저장하고 있는지를 검사한다. 다음에, 셋톱 박스(104)는, 각각의 셋톱 박스(103)의 고유 식별자(boxID), 거리 및/또는 비용에 대한 값, 및 리스트에 있는 모든 셋톱 박스(103)마다 호스팅되는 서브스트림들로 구성되는 3-튜플 데이터 세트(3-tuple data set)를 결정한다. 전술한 바와 같이, 네트워크 거리 또는 비용의 정의는 최적화의 목적에 의존한다. 예를 들면, 네트워크 트래픽이 감소될 것이라면, 라우터-레벨 또는 AS-레벨 홉(hop)들의 수가 네트워크 거리를 표시할 수 있다. AS는 "자율 시스템(Autonomous System)", 즉, 자족적이지만(self-contained) 다른 자율 시스템들에 액세스할 수 있는 시스템의 약어이다. 새롭게 부가된 셋톱 박스(104)는 이웃하는 셋톱 박스들(103)의 거리 및 콘텐츠 이용가능성 모두를 안다는 것에 기초하여 어떤 서브스트림을 국부적으로 저장할지를 결정한다.
셋톱 박스(104) 자체에 의해 설정된 3-튜플 데이터의 결정은 셋톱 박스(104) 외부의 제3자 서비스에 의해 마찬가지로 대체될 수 있다는 것을 유의하자. 예를 들면, 트랙커(102)는 이 서비스를 통합하고, 측정 결과들을, 예를 들면, 새롭게 부가된 셋톱 박스(104)에 의해 발행된 요청 시에 송신된 활성 셋톱 박스들(103)의 리스트의 부분으로서 직접 제공한다는 것을 알 수 있다. 비발디(Vivaldi) 또는 메리디안(Meridian)과 같은 배포된 거리 추정 프로토콜도 사용될 수 있다.
바람직하게, 거리 측정은 실제 데이터 다운로드동안 사용되는 라우팅 정책들을 고려한다. 예를 들면, 두 개의 셋톱 박스(103)는 두 개가 집적 접속된 AS(자율 시스템들)에 위치될 수 있지만, 불행하게도, 이들 두 개의 AS 간의 링크는 매우 비싸다. AS1이 AS2로부터 콘텐츠를 다운로드할 때, 직접 링크 대신에 데이터 패킷들을 위해 제3 AS에 의한 또 다른 라우팅(route)(예를 들면, AS1-AS3-AS2)이 실제로 사용된다. 이 경우, AS1에서 AS3을 경유하여 AS2로의 라우팅은 거리 계산을 위해 사용되어야 한다.
새롭게 부가된 셋톱 박스(104)는 이전 단계에서 얻어진 측정 결과들에 기초하여 어떤 서브스트림이 다운로드되어야 하는지를 결정한다.
계산들의 복잡성을 제한하고 측정 자체에 기인하는 네트워크 트래픽을 줄이기 위해, 임계값 δ를 설정하는 것이 유용할 수 있다. δ보다 더 먼 거리에 위치된 모든 셋톱 박스들(103)은 측정되지 않을 것이고 결정하는데 고려되지 않는다.
고려되는 모든 셋톱 박스들(103) 중에서, 변수 C는 이들 셋톱 박스(103) 전체에 의해 이미 저장된 서브스트림들의 세트를 표시한다. 변수 k는 완전한 데이터 파일 또는 비디오 파일의 서브스트림들의 수를 표시한다. C가 계산되면, 두 개의 가능한 시나리오가 존재한다:
|C| < k: 이것은 C가 모든 필요한 서브스트림들을 포함하지 않는다는 것을 의미한다. 이 경우에, 새롭게 부가된 셋톱 박스(104)는 고려되는 셋톱 박스들(103)의 부분이 아닌 임의의 소스로부터 C의 모든 누락 서브스트림들 중에서의 무작위 서브스트림을 다운로드한다.
|C| = k: 비디오 또는 데이터 파일의 모든 서브스트림들이 이웃하는 셋톱 박스(104)에서 발견될 수 있다. 이 경우, 셋톱 박스(104)는 "가장 먼(furthest)" 서브스트림을 다운로드하고 저장할 것이다. "가장 먼" 서브스트림은 셋톱 박스(104)가 정의된 라우팅 프로토콜을 사용하여 이것의 복제물(replica)을 검색하기를 원한다면 가장 비싼 비용을 발생시키는 것으로서 정의된다. "가장 먼" 서브스트림은 가장 먼 박스에 의해 저장된 서브스트림과는 다를 수 있다는 것을 유의하자.
도 2는 새로운 셋톱 박스가 부가되고 어떤 프래그먼트가 다운로드되고 저장되어야 하는지를 결정하는 프로세스를 명료히 설명하기 위해 다음에서 사용될 예시적 네트워크를 도시한다.
도시된 예에서, 파일 X의 프래그먼트들의 총 수는 k=2라고 가정되는데, 즉, 파일 X는 2 개의 서브스트림 또는 프래그먼트 1/2, 2/2로 분할된다. 시스템은 셋톱 박스들(1031 및 1032)을 포함하고, 이들 모두는 파일 X의 프래그먼트 1/2를 저장한다. 셋톱 박스(1034)는 파일 X의 프래그먼트 2/2를 저장한다. 새로운 셋톱 박스(1033)가 부가되고, 그 박스의 이웃들, 셋톱 박스들(1031, 1032 및 1034)를 발견한다. 전술한 바와 같이, 이들 각각은 이미 하나의 서브스트림을 호스팅한다. 새로운 셋톱 박스(1033)는 자신의 이웃들까지의 거리를 측정하고, 또한 그들이 어떤 서브스트림들을 저장하는지를 검사한다. 다음에, 새로운 셋톱 박스(1033)는 어떤 서브스트림을 국부적으로 저장할지를 결정하기 위해 본 발명의 방법을 실행한다. 본 발명에 따라, 이 예에서는 서브스트림 1/2보다는 2/2인 가장 먼 서브스트림을 선택할 것이다. 이것은, 셋톱 박스(1031)가 이미 서브스트림 1/2를 저장하고 셋톱 박스(1033)에 가깝게 위치되어 있는 한편, 서브스트림 2/2를 저장하는 셋톱 박스(1034)는 셋톱 박스(1031)보다 상대적으로 더 멀기 때문이다. 서브스트림 1/2의 또 다른 사본을 저장하는 것은, 셋톱 박스(1032)가 셋톱 박스(1034)보다 심지어 더 멀리 위치해 있더라도, 모든 요구되는 서브스트림들의 전체적인 거리를 줄이지는 못한다.
다음에 셋톱 박스(1033)는 콘텐츠 서버 및 이 서브스트림을 저장하고 있는 다른 활성 박스들로부터 병렬로 선택된 서브스트림을 다운로드할 수 있다. 다운로드가 완료되면, 새롭게 부가된 셋톱 박스(1033)에 의해 송신된 요청이 달성된다.
전술한 단계는 한 셋톱 박스가 주어진 파일의 한 서브스트림을 어떻게 선택하는지를 나타낸다. 상이한 파일들의 서브스트림들이 동일한 셋톱 박스에 저장될 수 있다. 본 발명의 일 양상에 따라, 독립적인 서비스는 각각의 셋톱 박스에 저장될 파일들의 세트를 결정할 수 있다. 이 서비스는 또한 파일의 인기, 사용자 선호도 등을 고려할 수 있다. 파일들의 세트가 결정되면, 각각의 프래그먼트들은 본 명세서에서 설명된 방법에 따라 셋톱 박스에 배치된다.
도 3은 본 발명에 따른 셋톱 박스(103)의 블록도를 도시한다. 셋톱 박스는 데이터 및 커맨드들 또는 요청들을 송신하고 수신하기 위한 네트워크 인터페이스(1103)를 포함한다. 또한 마이크로프로세서(2103)가 제공되는데, 그것은 본 발명의 방법을 수행하도록 적응되어 있다. 마이크로프로세서는 프로그램을 실행하기 위해 메모리(3103)를 수반할 수 있다. 메모리는 플래시 메모리, SRAM, SDRAM 또는 광 또는 자기 스토리지, 또는 그들의 조합을 포함할 수 있다.
지금까지 설명된 본 발명은 소위 "전력공급된 박스(box-powered)"로 불리는 것, 즉 저장 및 배포를 위해 사용자들의 분산형 셋톱 박스들을 사용하는 CDN(content distribution network)을 위한 콘텐츠 할당/배치의 개선된 방법을 제공한다. 본 발명은 이롭게도 배포 효율 및 연관된 트래픽을 개선한다. 또한, 본 발명은 이롭게도 콘텐츠 배포를 분산하여 관리할 수 있다. 또한, 본 발명의 방법은 고도로 적응적이다. 서비스 제공자들은 상이한 자신의 거리/비용 파라미터들을 정의할 수 있고 완전히 맞춤화된 최적화를 달성할 수 있다.
101: 콘텐츠 서버
102: 트랙커
103, 1031, 1032, 1033: 셋톱 박스

Claims (12)

  1. 네트워크를 통해 전자적 콘텐츠를 배포하는 방법으로서 - 상기 네트워크는 적어도 두 개의 네트워크 스테이션을 포함하고, 상기 적어도 두 개의 네트워크 스테이션은 콘텐츠를 저장하고 또한 저장된 콘텐츠를 검색하기 위해 적응되어 있고, 상기 저장된 콘텐츠는 파일들로 조직되고, 상기 파일들은 프래그먼트들로 분할되고, 주어진 파일의 프래그먼트들의 전부는 상기 주어진 파일을 재구성하는데 요구되고, 주어진 파일의 하나 또는 그 이상의 프래그먼트들은 개개의 상이한 네트워크 스테이션들에 저장됨 -,
    상기 방법은, 상기 네트워크에 네트워크 스테이션을 부가할 때,
    상기 부가된 네트워크 스테이션이, 미리 정해진 최대 거리 내에 위치된 네트워크의 다른 네트워크 스테이션들로부터 상기 주어진 파일의 어떤 프래그먼트들이 이용가능한지를 판정하는 단계
    를 포함하고,
    상기 미리 정해진 최대 거리 내에 위치된 네트워크의 하나 또는 그 이상의 다른 네트워크 스테이션들로부터 상기 주어진 파일의 모든 프래그먼트들이 이용가능하지 않은 경우, 상기 방법은,
    상기 부가된 네트워크 스테이션이, 상기 미리 정해진 최대 거리보다 더 멀리 위치된 추가의 네트워크 스테이션으로부터 상기 주어진 파일의 누락(missing) 프래그먼트들의 세트 중 무작위(random) 프래그먼트를 다운로딩하는 단계를 더 포함하고,
    상기 미리 정해진 최대 거리 내에 위치된 네트워크의 하나 또는 그 이상의 다른 네트워크 스테이션들로부터 상기 주어진 파일의 모든 프래그먼트들이 이용가능한 경우, 상기 방법은,
    상기 부가된 네트워크 스테이션이 상기 미리 정해진 최대 거리 내에 위치된 네트워크 스테이션들의 세트를 결정하는 단계 - 상기 결정된 세트는 상기 부가된 추가의 네트워크 스테이션에 가장 가깝게 위치된 네트워크 스테이션들을 포함하는 한편, 완전한 파일을 재구성하는데 요구되는 상기 주어진 파일의 모든 프래그먼트들을 이용가능하게 함 -,
    상기 부가된 네트워크 스테이션이, 상기 네트워크 스테이션들의 결정된 세트 중 가장 멀리 위치된 네트워크 스테이션으로부터 상기 주어진 파일의 프래그먼트를 다운로딩하는 단계
    를 더 포함하는 방법.
  2. 제1항에 있어서,
    상기 네트워크 스테이션들 중 어느 것도 주어진 파일의 모든 프래그먼트들을 저장하지는 않는 방법.
  3. 제1항에 있어서,
    상기 프래그먼트들은 미리 정해진 최대 크기를 갖는 방법.
  4. 제1항에 있어서,
    하나의 네트워크 스테이션 상에 저장된 파일들의 프래그먼트들은 개개의 총 파일의 연속적 또는 비연속적 부분들을 나타낼 수 있는 방법.
  5. 제1항에 있어서,
    상기 부가된 네트워크 스테이션은 자신이 현재적으로 저장한 파일들의 프래그먼트들을 판정하는 방법.
  6. 제1항에 있어서,
    상기 부가된 네트워크 스테이션은 초기에는 콘텐츠를 저장하지 않는 방법.
  7. 제1항에 있어서,
    상기 미리 정해진 최대 거리보다 더 멀리 있는 네트워크 스테이션은 파일의 모든 프래그먼트들을 호스팅하는 콘텐츠 서버를 포함하는 방법.
  8. 제1항에 있어서,
    상기 네트워크의 초기화 시에, 콘텐츠 서버는 어떤 네트워크 스테이션들에 의해 어떤 프래그먼트들이 저장되어야 하는지를 판정하는 방법.
  9. 제1항에 있어서,
    상기 거리의 계산은, 네트워크 비용, 라우터 홉(hop)들, 전송 레이턴스(latency), 전송 지연, 또는 그들의 조합에 기초하는 방법.
  10. 전자적 콘텐츠 배포 시스템의 네트워크 스테이션으로서,
    상기 네트워크 스테이션은 커맨드들 및 데이터를 송신하고 수신하기 위한 네트워크 인터페이스, 마이크로프로세서 및 프로그램 및 데이터 메모리를 포함하고, 상기 네트워크 스테이션은 상기 네트워크에 부가될 때 청구항 제1항 내지 제9항 중 어느 한 항에 따른 방법을 수행하도록 적응되는
    네트워크 스테이션.
  11. 제10항에 있어서,
    상기 네트워크 스테이션은 적시에(timely) 그리고 순서가 있는 방식(ordered manner)으로 파일의 프래그먼트들의 스트리밍을 위해, 및/또는 파일의 프래그먼트들을 수신하고 파일의 수신된 프래그먼트들을 버퍼링하는 한편 상기 네트워크 스테이션에서 이미 이용가능한 파일의 부분들을 재생하기 위해 적응되는 네트워크 스테이션.
  12. 청구항 제10항 또는 제11항에 따른 적어도 두 개의 네트워크 스테이션을 갖는 네트워크를 포함하는 전자적 콘텐츠 배포 시스템.
KR1020100045530A 2009-05-15 2010-05-14 전자적 콘텐츠를 저장하고 배포하는 방법 및 시스템 KR20100123659A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP09305439.3 2009-05-15
EP09305439A EP2252061A1 (en) 2009-05-15 2009-05-15 Method and system for storing and distributing electronic content

Publications (1)

Publication Number Publication Date
KR20100123659A true KR20100123659A (ko) 2010-11-24

Family

ID=40929564

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100045530A KR20100123659A (ko) 2009-05-15 2010-05-14 전자적 콘텐츠를 저장하고 배포하는 방법 및 시스템

Country Status (5)

Country Link
US (1) US20100293172A1 (ko)
EP (2) EP2252061A1 (ko)
JP (1) JP5629492B2 (ko)
KR (1) KR20100123659A (ko)
CN (1) CN101888403B (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102217772B1 (ko) * 2019-10-11 2021-02-19 에스케이텔레콤 주식회사 컨텐츠를 나눈 컨텐츠 조각을 전송하는 방법 및 그 방법을 수행하는 단말

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102497387A (zh) * 2011-11-11 2012-06-13 合一网络技术(北京)有限公司 一种基于P2P客户端状态分析的Flash视频分发方法
US9160697B2 (en) * 2012-01-01 2015-10-13 Qualcomm Incorporated Data delivery optimization
CN102724597A (zh) * 2012-06-13 2012-10-10 中山大学 一种基于网络拓扑结构的机顶盒文件分发方法
CN104796741B (zh) * 2015-04-15 2018-03-16 姚世明 一种网络分层和资源分片的媒体分享方法装置
CN106303562B (zh) * 2016-09-20 2019-03-01 天津大学 基于pi控制的多视点视频自适应传输控制算法
CN108076350A (zh) * 2016-11-14 2018-05-25 中国科学院声学研究所 一种基于路由器协同缓存的视频服务系统及方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6970939B2 (en) * 2000-10-26 2005-11-29 Intel Corporation Method and apparatus for large payload distribution in a network
US20020161860A1 (en) * 2001-02-28 2002-10-31 Benjamin Godlin Method and system for differential distributed data file storage, management and access
US7552192B2 (en) * 2002-12-18 2009-06-23 Ronnie Gerome Carmichael Massively parallel computer network-utilizing MPACT and multipoint parallel server (MPAS) technologies
JP2005004615A (ja) * 2003-06-13 2005-01-06 Oki Electric Ind Co Ltd コンテンツ配信管理システム
JP4306365B2 (ja) * 2003-08-07 2009-07-29 ソニー株式会社 サーバ及びコンテンツ受信装置
GB2412760B (en) * 2004-04-01 2006-03-15 Toshiba Res Europ Ltd Secure storage of data in a network
DE102004031945A1 (de) * 2004-06-30 2006-03-09 Deutsche Thomson-Brandt Gmbh Verfahren zur Bereitstellung einer Tabelle stationsspezifischer Informationen in einem Netzwerk verteilter Stationen sowie Netzwerkstation für die Durchführung des Verfahrens
JP2006178782A (ja) * 2004-12-22 2006-07-06 Fuji Xerox Co Ltd 情報処理方法、配信情報の処理方法、配信情報処理プログラム及び配信処理装置
US20070288638A1 (en) * 2006-04-03 2007-12-13 British Columbia, University Of Methods and distributed systems for data location and delivery
US7983691B1 (en) * 2006-11-06 2011-07-19 Google Inc. Geographically localizing mobile communciation devices
JP2008234445A (ja) * 2007-03-22 2008-10-02 Brother Ind Ltd コンテンツ分散保存システム、複製データ取得方法、ノード装置、及びノード処理プログラム
CN101312522A (zh) * 2007-05-22 2008-11-26 中兴通讯股份有限公司 视频点播系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102217772B1 (ko) * 2019-10-11 2021-02-19 에스케이텔레콤 주식회사 컨텐츠를 나눈 컨텐츠 조각을 전송하는 방법 및 그 방법을 수행하는 단말

Also Published As

Publication number Publication date
JP5629492B2 (ja) 2014-11-19
US20100293172A1 (en) 2010-11-18
CN101888403B (zh) 2014-07-02
EP2252057A1 (en) 2010-11-17
CN101888403A (zh) 2010-11-17
EP2252057B1 (en) 2012-06-27
EP2252061A1 (en) 2010-11-17
JP2010283812A (ja) 2010-12-16

Similar Documents

Publication Publication Date Title
US7908362B2 (en) Method and apparatus for the delivery of digital data
US8131971B2 (en) Methods and systems for push-to-storage
US8646016B2 (en) Content storage and delivery systems and associated methods
US8875207B2 (en) Content storage and delivery system and associated method and device
US20020162109A1 (en) Distributed storage on a P2P network architecture
KR20100123659A (ko) 전자적 콘텐츠를 저장하고 배포하는 방법 및 시스템
Janardhan et al. Peer assisted VoD for set-top box based IP network
US20230119540A1 (en) Content delivery system special network device and special local area network connection, content discovery, data transfer, and control methods
KR101520519B1 (ko) 디지털 데이터 전달 방법 및 장치와, 데이터 소스 선택 방법 및 장치와, 현물 시장 트레이딩 디바이스
US11877350B2 (en) Special local area network with secure data transfer
WO2021015911A1 (en) A network arrangement using snds and slans
EP2400749B1 (en) Access network controls distributed local caching upon end-user download
GB2455301A (en) Dynamic adjustment of the delivery of digital data from multiple data sources

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application