KR20020035571A - Vod from a server or a user to another user - Google Patents

Vod from a server or a user to another user Download PDF

Info

Publication number
KR20020035571A
KR20020035571A KR1020027001493A KR20027001493A KR20020035571A KR 20020035571 A KR20020035571 A KR 20020035571A KR 1020027001493 A KR1020027001493 A KR 1020027001493A KR 20027001493 A KR20027001493 A KR 20027001493A KR 20020035571 A KR20020035571 A KR 20020035571A
Authority
KR
South Korea
Prior art keywords
euu
data
data file
server
euus
Prior art date
Application number
KR1020027001493A
Other languages
Korean (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 란돌 엠. 청
Publication of KR20020035571A publication Critical patent/KR20020035571A/en

Links

Classifications

    • 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
    • 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
    • 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
    • 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
    • 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
    • H04N21/4331Caching operations, e.g. of an advertisement for later insertion during playback
    • 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/81Monomedia components thereof
    • H04N21/816Monomedia components thereof involving special video data, e.g 3D video
    • 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)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

통신망을 통해 접속된 분배된 저장 시스템을 사용해서 다수의 엔드 유저(5-12)에게 데이터를 전송하는 시스템 및 방법이 개시된다. 오디오 및 비디오 재생 및 기록용 엔드 유저 장치는, 자기 디스크와 같은 저장유닛을 포함한다. 이러한 저장 유닛은 디지털 비디오 컨텐트, 즉, 영화 또는 오디오 컨텐트 즉, 노래와 같은 데이터를 저장할 수 있다. 저장 유닛은 디지털 비디오 또는 오디오 컨텐트의 일부 또는 단편을 저장하도록 구성될 수 있고, 각각의 저장 유닛의 디지털 비디오 및 오디오 컨텐트의 저장 위치, 재생, 및 기록이 중앙 설비(1)에 의해 조정되고, 관리되고, 제어된다. 비디오 또는 오디오 컨텐트의 재생용 컨텐트 또는 그 일부는 일이상의 물리적으로 분리된 저장 장치에 존재하거나 중앙 저장 장치에 존재할 수 있다.Systems and methods are disclosed for transmitting data to multiple end users 5-12 using distributed storage systems connected through a communications network. The end user apparatus for audio and video reproduction and recording includes a storage unit such as a magnetic disk. Such a storage unit can store data such as digital video content, ie movie or audio content, ie songs. The storage unit may be configured to store a portion or fragment of digital video or audio content, wherein the storage location, playback, and recording of the digital video and audio content of each storage unit is coordinated and managed by the central facility 1. And controlled. Content for playback of video or audio content, or portions thereof, may be present in one or more physically separate storage devices or in a central storage device.

Description

서버 또는 유저로부터 다른 유저로의 VOD{VOD FROM A SERVER OR A USER TO ANOTHER USER}VOD FROM A SERVER OR A USER TO ANOTHER USER}

VCR의 출현이후에 시청자가 비디오 대여점에 가야하는 필요성을 감소시키도록 주문형 비디오(movie-on-demand) 시스템을 가지고자 하는 사람들이 늘어왔다. "주문형 비디오("VOD") 시스템은 시청자가 자유재량으로 영화 또는 비디오 프로그램을 선택해서 즉시, 또는 몇 시간 후, 심지어 며칠후와 같은 원하는 시간에 비디오 컨텐트를 시청할 수 있게 한다. 비디오의 전송은 완전히 전자적이여서 비디오 테이프 또는 비디오 디스크와 같은 물리적인 매체를 구입할 필요가 없고, 비디오 대여점에서 대여해서 시청한 후에 반납할 필요도 없다.Since the advent of VCRs, more and more people want to have a movie-on-demand system to reduce the need for viewers to go to a video rental store. "Video On Demand" ("VOD") systems allow viewers to choose a movie or video program at their discretion and watch the video content immediately, at any time, such as hours or even days later. It's electronic, so you don't have to buy physical media like video tapes or video discs, and you don't have to rent them at a video rental store to return them.

케이블 회사는 그들의 케이블 고객을 위해 몇개의 형태의 비디오 전송 시스템을 구현한다. 그러나, 저장 공간과 대역폭의 한계로 인해서 영화의 선택은 극히 제한되고, 시청자는 케이블 회사에서 지정한 시간에만 영화를 감상할 수 있다. 수용일 저녁에 고전 영화 대부를 보고 싶은 사람은 불행하다. 따라서 폭 넓은 시청자에 적합한 융통성의 정도를 가진 시스템이 거의 없기 때문에, 케이블 회사에서 제공하는 시스템은 진정한 VOD 시스템이 아니다.Cable companies implement several types of video transmission systems for their cable customers. However, due to storage space and bandwidth limitations, the choice of movies is extremely limited, and viewers can watch movies only at the time specified by the cable company. The person who wants to see a classic movie loan on the evening of the evening is unhappy. As a result, few systems have a degree of flexibility suitable for a broad audience, so the system provided by the cable company is not a true VOD system.

다수의 시청자를 위해 주문형 비디오 시스템을 구현하는 것은 어렵고 돈이 많이 든다. 수백 또는 수천의 상이한 엔드 소비자에게 다양한 연속 오디오 및 비디오 스트림을 동시에 전송할 수 있는 멀티미디어 서버가 필요하다. 이상적으로는, 소비자는 수백개의 영화나 노래의 라이브러리로부터 그들의 컨텐트를 선택할 수 있다. 그러나, 전형적인 하드디스크 드라이브는 몇개의 영화 전편을 보유할 수 있고, 이는 멀티미디어 서버가 50개 이상의 디스크 드라이브를 구비하야 한다는 것을 의미한다. 도 1A는 이러한 "주문형 비디오" 공급용 종래의 케이블 방송 시스템을 도시하고 있다.Implementing an on-demand video system for a large number of viewers is difficult and expensive. There is a need for a multimedia server capable of simultaneously transmitting a variety of continuous audio and video streams to hundreds or thousands of different end consumers. Ideally, consumers can choose their content from a library of hundreds of movies or songs. However, a typical hard disk drive can hold several full-length movies, which means that a multimedia server must have more than 50 disk drives. Figure 1A shows a conventional cable broadcast system for this "on-demand video" supply.

대규모 공유 멀티미디어 서버를 구현할 때의 다른 어려움은 디지털 멀티미디어 컨텐트의 다양한 스트림을 처리해서 전송해야할 필요가 있다는 것이다. 표준 해상도의 압축 텔레비전 신호는 초당 약 4 메가비트의 평균 데이터 전송율로 전송된다. 만약 하나의 멀티미디어 서버가 백개의 다른 프로그램을 동시에 전송해야 한다면, 요구되는 평균 전체 대역폭은 초당 약 400메가비트가 된다. 이 대용량 데이터는 또한 감지가능한 불연속없이 백명의 시청자에게 전송되어야 하고, 그렇지 않으면, 시청감은 열화된다. 고속의 서비스 품질(QoS)을 가지고, 중앙 서버로부터다수의 유저에게 이러한 고속의 데이터 전송율을 유지하는 네트워크는 매우 고가이고, 누가 만들든지 비현실적이였다.Another difficulty when implementing large shared multimedia servers is the need to process and transmit various streams of digital multimedia content. Compressed television signals at standard resolution are transmitted at an average data rate of about 4 megabits per second. If a multimedia server had to send hundreds of other programs simultaneously, the average overall bandwidth required would be about 400 megabits per second. This large amount of data must also be sent to a hundred viewers without any detectable discontinuity, otherwise the viewing experience deteriorates. Networks with high quality of service (QoS) and maintaining this high data rate from a central server to many users are very expensive and unrealistic for anyone to make.

케이블 모뎀을 사용하는 인터넷을 통한 통신의 도래에 맞춰, 케이블 회사에 의한 케이블 모뎀이 주문형 비디오의 제공을 가능하게 하는 것이 제안되었다. 인터넷과 연결된 케이블 모뎀이, 케이블 회사가 성공시키지 못한 것, 즉 인터넷을 사용한 주문형 비디오 시스템을 성공시켜야할 필요가 있었다.With the advent of communications over the Internet using cable modems, it has been proposed that cable modems by cable companies enable the provision of video on demand. Cable modems connected to the Internet needed to succeed what cable companies did not succeed: on-demand video systems using the Internet.

도 1B는 주문형 비디오가 대도시 지역의 케이블 모뎀을 가지고, 케이블 TV 방송 시스템으로 제공되는 방법이 도시되어 있다. 이 시스템에서, 아날로그 TV 신호는 위성 접시(1)에 의해 수신된다. 아날로그 TV 신호는 신호결합기를 통해서 인터넷으로부터의 주문형 비디오 신호 및 디지털 통신 신호와 결합된다.1B illustrates how video on demand has a cable modem in a metropolitan area and is provided to a cable TV broadcast system. In this system, the analog TV signal is received by the satellite dish 1. Analog TV signals are combined with video-on-demand and digital communication signals from the Internet through signal combiners.

도 1B에서, 주문형 비디오 신호는 디지털이고, 이 신호는 아날로그일 수도 있다. 인터넷 공중망상에서의 월드 와이드 웹 페이지와 같은 디지털 컨텐트는 라우터(3)를 통해서 시스템에 접속된다. 라우터(3)는 인터넷 네트워크와 예를들어 이서넷 네트워크 스위치(4)와의 사이와 같은, 한 네트워크로 부터 다른 네트워크로 패킷 데이터를 전송하기 위해 사용된다. 이서넷 네트워크 스위치(4)는 인터넷 라우터(3), 파이버 리턴 채널 복호기(5), 파일 서버(6), 멀티미디어 서버(8) 및 변조기(9)와 데이터를 주고 받는다. 파이버 리턴 채널 복호기(5)는 고객 댁내 장치("CPE")로부터 되돌아온 신호를 광섬유(11)를 통해서 디지털 형식으로 되돌려지고, 이는 인터넷으로 전송된다. 파일 서버는 월드 와이드 웹 페이지를 유지하거나 인터넷 정보를 캐싱하기 위해 사용될 수 있다. 멀티미디어 서버는 컨텐트 데이터 베이스(7)를 제어하고, 여러 영화나 노래를 동시에 판독할 수 있다. 컨텐트 데이터 베이스는 모든 디지털화된 영화나 노래를 유지할 수 있다. 멀티미디어 서버 또는 이서넷 스위치로부터 엔드 유저로 전송되는 디지털 데이터는 위성 접시(1)로부터의 아날로그 TV 신호와 결합하기 전에 디지털 아날로그 변조기(9)를 지날 수 있다.In FIG. 1B, the video on demand signal is digital, which may be analog. Digital content, such as world wide web pages on the Internet public network, is connected to the system via a router 3. The router 3 is used for transferring packet data from one network to another network, such as between the Internet network and the Ethernet network switch 4, for example. The Ethernet network switch 4 exchanges data with the Internet router 3, the fiber return channel decoder 5, the file server 6, the multimedia server 8, and the modulator 9. The fiber return channel decoder 5 returns the signal returned from the customer premises equipment (“CPE”) through the optical fiber 11 in digital form, which is transmitted to the Internet. File servers can be used to maintain world wide web pages or to cache Internet information. The multimedia server controls the content database 7 and can read several movies or songs simultaneously. The content database can hold all digitized movies or songs. Digital data transmitted from the multimedia server or the Ethernet switch to the end user may pass through the digital analog modulator 9 before combining with the analog TV signal from the satellite dish 1.

도 1B를 다시 참조하면, 광 섬유(11)과 동축 케이블(13)사이를 지나는 신호는 동축-광섬유 변환기(12)에 의해 전송될 수 있다. 디지털 신호가 PC(15)에 의해 사용되기 위해 케이블 모뎀(14)에 의해 디지털로 변환되는 반면에, 아날로그 TV 신호는 TV 세트(17)에 전송되기 위해 셋톱박스(16)를 통해 변환된 주파수가 될 수 있다. 다른 주택이 다른 CPE(19)를 구비하고 있는 반면에 단일 주택의 고객 댁내 장치(18:CPE)는 하나의 장치의 세트를 구비하고 있고, 각각의 고객은 상이한 비디오, 오디오, 및 데이터 컨텐트를 시청한다.Referring again to FIG. 1B, the signal passing between the optical fiber 11 and the coaxial cable 13 may be transmitted by the coaxial-to-fiber converter 12. While the digital signal is converted to digital by the cable modem 14 for use by the PC 15, the analog TV signal is converted into frequency through the set top box 16 for transmission to the TV set 17. Can be. While different homes have different CPEs 19, the customer premises device 18: CPE in a single home has a set of devices, and each customer views different video, audio, and data content. do.

수백, 수천의 고객이 하나의 프로바이더 장치에 의해 제공받는 것은 흔한 일이 아니다. 이는 멀티미디어 서버가 잠재적으로는 상이한 영화 또는 음악 데이터 스트림을 각각의 고객에게 동시에 제공해야 한다는 것을 의미한다. 이는 수천명의 고객과 단 하나의 멀티미디어 서버만이 존재하는 경우에는 실질적으로 불가능하다. 하나의 해법은 각각이 고객의 서브 셋을 맡는, 다양한 멀티미디어 서버를 구비하는 것이 될 수 있지만, 모든 고객을 서비스하는 비용을 배가시킨다. 다른 문제는 대 용량 멀티미디어 데이터가 집중된 멀티미디어 서버 또는 서버의 그룹으로부터 이동되어야 한다는 것이다. 각각의 고객은 멀티미디어 서버로부터 상이한 비디오의 시간상 다른 지점(예를들어, 비디오의 시작, 중간, 끝에서)을 시청할 수 있고, 각각의 비디오는 분배된 채널로 다루어진다. 수백 또는 수천의 분배된 채널의 대역폭은 일반 방송 채널에 더해서, 현재 전송 경로가 오늘날 다룰 수 있는 것보다 더 높다.It is not uncommon for hundreds and thousands of customers to be served by one provider device. This means that the multimedia server must potentially provide different customers with different movie or music data streams at the same time. This is practically impossible if there are thousands of customers and only one multimedia server. One solution could be to have a variety of multimedia servers, each with a subset of customers, but it doubles the cost of serving all customers. Another problem is that large amounts of multimedia data must be moved from a centralized multimedia server or group of servers. Each customer can watch different points in time (eg, at the beginning, middle, and end of the video) of different videos from the multimedia server, and each video is treated as a distributed channel. The bandwidth of hundreds or thousands of distributed channels, in addition to regular broadcast channels, is higher than the current transmission path can handle today.

따라서, 여러 수신자가 그들이 선택한 임의의 시간에 동일한 또는 상이한 컨텐트를 수신할 수 있는 주문형 데이터 전송 시스템을 구비하는 것이 바람직하다.Thus, it is desirable to have an on-demand data transmission system that allows multiple recipients to receive the same or different content at any time they choose.

또한, 서버의 대역폭 또는 전송 기반을 낭비하지 않는, 주문형 데이터 전송 시스템등을 구비하는 것이 바람직하다.It is also desirable to have an on-demand data transmission system or the like that does not waste the bandwidth or transmission base of the server.

본 발명은 1999년 8월 2일에 출원된 가출원 제 60/146,893호 "Method and Apparatus for Data Delivery Using Distributed Storage System"를 우선권으로 주장하고 있다.The present invention claims priority to provisional application No. 60 / 146,893, entitled "Method and Apparatus for Data Delivery Using Distributed Storage System", filed August 2, 1999.

본 발명은 데이터 통신망에 관한 것이고, 더 상세하게는 인터넷과 같은 네트워크를 통해 뷴배된 저장 유닛을 사용해서 데이터를 전송하는 방법 및 장치에 관한 것이다.The present invention relates to a data communication network, and more particularly, to a method and apparatus for transmitting data using a storage unit that has been preponded over a network such as the Internet.

도 1A는 케이블 방송 시스템 상에서의 종래의 주문형 비디오 시스템을 도시한 도면,1A illustrates a conventional video-on-demand system on a cable broadcast system;

도 1B는 케이블 모뎀에 설치된 엔드 유저에게 설치되는 예시적인 주문형 비디오 시스템을 도시한 도면,1B illustrates an exemplary video-on-demand system installed in an end user installed in a cable modem;

도 2A는 단일 멀티미디어 서버가 수백명의 유저에게 동시에 AV 컨텐트를 전송하는 방법의 실시예를 도시한 도면,2A illustrates an embodiment of a method in which a single multimedia server simultaneously delivers AV content to hundreds of users.

도 2B는 세개의 캐시 메모리가 멀티미디어 서버와 고객 사이에 삽입될 수 있는 방법의 실시예를 도시한 도면,2B illustrates an embodiment of how three cache memories may be inserted between a multimedia server and a customer;

도 3A는 유저의 사이트의 엔드 노드 장치(End Node Equipment)의 간략화된 블록도,3A is a simplified block diagram of an End Node Equipment at a user's site;

도 3B는 중앙 서버와 유저의 사이의 엔드 노드 장치를 구비한 종래의 VOD 시스템의 간략화된 블록도,3B is a simplified block diagram of a conventional VOD system with end node devices between a central server and a user;

도 4A는 본 발명에 따른 TV와 함께 사용하는 케이블 모뎀을 구비한 엔드 노드 장치의 간략화된 블록도,4A is a simplified block diagram of an end node device with a cable modem for use with a TV in accordance with the present invention;

도 4B는 본 발명에 따른 PC와 함께 사용하는 케이블 모뎀을 구비한 엔드 노드 장치의 간략화된 블록도,4B is a simplified block diagram of an end node device with a cable modem for use with a PC in accordance with the present invention;

도 4C는 본 발명의 분배된 서버 시스템의 간략화된 블록도,4C is a simplified block diagram of a distributed server system of the present invention;

도 5A, 5B는 재생 개시 시간을 감소시킨 다중 엔드 노드로부터의 컨텐트의 동시전송을 도시한 도면,5A and 5B illustrate the simultaneous transmission of content from multiple end nodes with reduced playback start time;

도 6은 DSL네트워크에 기초한 VOD 시스템의 간략화된 블록도,6 is a simplified block diagram of a VOD system based on a DSL network;

도 7은 엔드 노드 유닛에 컨텐트를 분배하는 과정을 도시한 흐름도,7 is a flowchart illustrating a process of distributing content to an end node unit;

도 8A 및 8B는 엔드 노드와 컨텐트 서버의 조합으로부터 컨텐트가 전송되는 VOD 시스템의 또 다른 실시예를 도시한 도면.8A and 8B illustrate another embodiment of a VOD system in which content is transmitted from a combination of end node and content server.

데이터 통신망을 통해서 접속된 저장 시스템을 사용해서 다양한 엔드 유저에게 데이터를 전송하는 시스템 및 방법이 개시되고, 오디오/비디오 재생 또는 기록용 엔드 유저 장치는 자기 디스크와 같은 저장 유닛을 포함한다. 각각의 저장 유닛은 디지털 비디오 컨텐트 즉, 영화와 같은 데이터 또는 디지털 오디오 컨텐트 즉 노래와 같은 데이터를 저장할 수 있다. 저장 유닛은 디지털 비디오 또는 오디오 컨텐트의 일부 또는 단편(fragment)을 저장하도록 구성되고, 각각의 저장 유닛의 디지털 비디오 또는 오디오 컨텐트의 저장 위치, 재생 및 기록은 중앙 설비에 의해 조정되고, 관리되고 제어된다. 비디오 또는 오디오 컨텐트, 또는 그 일부의 재생을 위한 컨텐트는 일 이상의 물리적으로 분배된 저장 유닛에 존재할 수 있고, 또는 중앙 저장 유닛에 존재할 수도 있다.Systems and methods for transmitting data to various end users using a storage system connected through a data communication network are disclosed, and end user devices for audio / video playback or recording include storage units such as magnetic disks. Each storage unit can store digital video content, ie data such as movies or digital audio content, ie data such as songs. The storage unit is configured to store a portion or fragment of digital video or audio content, and the storage location, playback and recording of the digital video or audio content of each storage unit is coordinated, managed and controlled by the central facility. . Content for playback of video or audio content, or portions thereof, may reside in one or more physically distributed storage units, or may reside in a central storage unit.

컨텐트는 또한 일 이상의 물리적으로 분배된 저장 유닛으로부터 일 이상의다른 물리적으로 분배된 사이트로 동시의 판독되어서 전송될 수 있고, 영화와 같은 전체 컨텐트는 동일한 또는 동일하지 않은 피스로 분배될 수 있고, 일 이상의 피스는 다수의 물리적으로 분배된 저장 유닛에 저장될 수 있다. 피스의 저장 위치의 할당, 전송 우선순위 및 피스의 목적지는 중앙에서 관리되고 제어된다. 가까운 장래에 다른 고객에게 동일한 컨텐트를 전송할 필요성을 예상해서, 컨텐트는 컨텐트가 표시되기를 원하지 않는 저장 유닛으로도 동시에 전송될 수 있다. 이는 신작과 같은 어떤 프로그램의 과도한 다운로드의 예측에 있어서의 임의의 시간, 피크 또는 비-피크에서의 다이나믹한 리소스의 할당을 가능하게 한다.Content can also be read and transmitted simultaneously from one or more physically distributed storage units to one or more other physically distributed sites, and the entire content, such as a movie, can be distributed in the same or non-identical pieces, The pieces may be stored in multiple physically distributed storage units. The allocation of the storage location of the piece, the transmission priority and the destination of the piece are centrally managed and controlled. In anticipation of the need to transmit the same content to other customers in the near future, the content may be simultaneously delivered to storage units that do not want the content to be displayed. This allows the allocation of dynamic resources at any time, peak or non-peak in the prediction of excessive download of some program, such as new work.

또한, 저장 유닛 사이에 접속된 데이터 통신망은 유선 또는 무선이 될 수 있다. 인터넷이 케이블 모뎀을 사용하지만, 다른 형태의 네트워크 접속을 활용할 수도 있다.In addition, the data communication network connected between the storage units can be wired or wireless. Although the Internet uses cable modems, other forms of network connection may be used.

당업자에게 공지되어 있는 바와 같이, 하기의 설명에 개시되는 것은 디스크 드라이브, 또는 파일 서버에 국부적으로 또는 원격적으로 연결된 "셋톱 박스"이고, "셋톱 박스"는 다른 "셋톱 박스"에서는 파일 서버로의 역할을 한다. 이와 같이, 전체 셋톱 박스는 부피가 크고, 각각의 멤버 셋톱 박스로 분배된 저장 설비이다. 또한, 개시된 것은 다른 파일 서버 또는 셋톱박스의 역할을 할 수 있는 디스크 드라이브를 포함하고 있는 개인용 컴퓨터이고, 파일은 다수의 컴퓨터 또는 셋톱 박스상에서 분배된 저장 또는 전송을 위해 임의의 크기로 분배될 수 있다.As is known to those skilled in the art, what is disclosed in the following description is a "set top box" locally or remotely connected to a disk drive or file server, and a "set top box" is referred to as a file server in another "set top box". Play a role. As such, the entire set top box is bulky and is a storage facility distributed to each member set top box. Also disclosed is a personal computer comprising a disk drive that can act as another file server or set-top box, and the file can be distributed in any size for distributed storage or transmission on multiple computers or set-top boxes. .

분배된 저장 시스템을 사용해서 데이터를 전송하는 방법 및 장치가 개시된다. 하기의 설명에서, 본 발명은 서버, 스위치, 라우터, 데이터 베이스, 엔드 노드, 네트워크 및 인터넷이라는 용어를 사용하고, 이 용어는 당업자간의 대화에서 전형적으로 사용된다. 또한, 용어 "데이터"가 오디오 또는 비디오 컨텐트, 멀티미디어 컨텐트, 또는 통신망에서 전송되는 간단한 2진 비트를 나타낼 수 있다는 것을 당업자는 이해할 것이다.A method and apparatus for transferring data using a distributed storage system is disclosed. In the following description, the invention uses the terms server, switch, router, database, end node, network, and the Internet, which terms are typically used in conversations among those skilled in the art. Further, those skilled in the art will understand that the term “data” may refer to audio or video content, multimedia content, or simple binary bits transmitted over a communication network.

상술한 바와 같이, 멀티미디어 서버의 대역폭 요구량을 감소시키는 한가지 방법은 컨텐트의 제 1 전송을 캐시하기 위해 주요 네트워크 전송 경로를 가지는 것이다. 또한, 다른 엔드 유저로부터의 동일한 컨텐트의 요청이 캐싱 저장 유닛으로부터 서비스될 수 있다.As mentioned above, one way to reduce the bandwidth requirement of a multimedia server is to have a primary network transmission path to cache the first transmission of content. In addition, requests of the same content from other end users may be serviced from the caching storage unit.

도 2A는 단일 멀티미디어 서버가 수백명의 유저에게 동시에 AV 컨텐트를 전송하도록 요청받을 수 있는 방법의 실시예를 도시하고 있다. 일부 컨텐트는 다른 것 보다 더 인기가 많을 수 있기 때문에 많은 고객이 동일한 AV컨텐트를 시청하고 있을 수 있다. 예를들어, 새로이 개봉한 영화는 몇년지난 영화보다 훨씬 인기가 많다. 그러나, 고정된 스케쥴보다는 고객이 원하는 시간에 고객이 영화를 시작하게 할 수 있게 하는 것이 바람직하고, 이는 케이블 회사가 비디오 프로그램을 제공하는 방식에서 발생한다. 이는 일부 비디오가 일 이상의 고객에 의해 시청되고 있을 지라도, 영화는 시간적으로 다른 지점에서 시청되어야 하기 때문에 데이터는 중복해서 전송되어야 한다.2A illustrates an embodiment of a method in which a single multimedia server may be requested to simultaneously deliver AV content to hundreds of users. Because some content may be more popular than others, many customers may be watching the same AV content. For example, a newly released film is much more popular than a few years old. However, it is desirable to allow a customer to start a movie at a time desired by the customer rather than on a fixed schedule, which occurs in the way that the cable company provides the video program. This means that even if some videos are being watched by more than one customer, the data must be transmitted redundantly because the movie must be watched at different points in time.

도 2B는 캐시 메모리가 멀티미디어 서버와 고객사이에 삽입되어서 전송 주문을 용이하게 하는 방법을 도시하고 있다. 각각의 캐시 메모리는 전체 고객중 더 작은 그룹에게 공급된다. AV 컨텐트가 그룹의 캐시 메모리에 미리 저장되어 있지 않다면, 중앙 멀티미디어 서버에 의해 제공될 것이다. AV 컨텐트는 고객에게 전송될 것이고, 또한 그룹 캐시 메모리에 임시로 저장될 것이다. 만약 그룹내의 다른 고객이 동일한 AV를 요청하면, AV 컨텐트는 계속해서 캐시 메모리에 저장되고, 캐시 메모리는 용이하게 컨텐트를 제공할 수 있다. 이는 중앙 멀티미디어 서버에 걸리는 부하를 감소시키고, 유저가 사용하는 대역폭을 감소시킨다. 그러나, 이러한 어프로치에는 분명한 문제가 존재한다. 만약 캐시 메모리가 너무 작으면, AV 컨텐트의 극히 일부만이 저장될 수 있어서, 많은 컨텐트 요청이 캐시를 지나치게 한다. 이는 대역폭과 중앙 멀티미디어 서버에 걸리는 부하를 줄이는 효과를 감소시킨다. 그러나, 캐시 메모리를 크게 하는 것은 비용을 증가시킨다.Figure 2B illustrates how a cache memory is inserted between the multimedia server and the customer to facilitate transfer orders. Each cache memory is supplied to a smaller group of total customers. If the AV content is not previously stored in the group's cache memory, it will be provided by the central multimedia server. The AV content will be sent to the customer and also temporarily stored in the group cache memory. If other customers in the group request the same AV, the AV content continues to be stored in the cache memory, and the cache memory can easily provide the content. This reduces the load on the central multimedia server and reduces the bandwidth used by the user. However, there is a clear problem with this approach. If the cache memory is too small, only a fraction of the AV content can be stored, so many content requests over cache. This reduces the bandwidth and the effect of reducing the load on the central multimedia server. However, increasing the cache memory increases the cost.

상술한 바와 같이, 본 발명은 멀티미디어 컨텐트의 주 저장장치로서의 역할을 하는, 엔드 노드에 저장 유닛의 시스템을 구비함으로써 디지털 멀티미디어와 같은 데이터를 분배하는 종래의 방식의 문제를 해결하는 해법을 제공하는 것이다. 중앙 집중된 멀티미디어 서버가 멀티미디어 컨텐트의 전송을 증가시키기 위해서 사용될 수도 있지만, 그러나 엔드 노드로부터의 멀티미디어 데이터 요청의 대부분은 다른 엔드 노드에서의 각각의 저장 유닛으로부터 서비스될 것이다.As described above, the present invention provides a solution to the problem of the conventional way of distributing data, such as digital multimedia, by having a system of storage units at the end node, which serves as the primary storage of multimedia content. . Although centralized multimedia servers may be used to increase the delivery of multimedia content, most of the multimedia data requests from the end nodes will be serviced from each storage unit at the other end node.

이러한 분배된 서버 시스템은 시간 중심(time-critical) 멀티미디어 컨텐트를 분배하기 위해 사용될 때, 현재 중앙 집중된 서버 시스템의 고유한 문제를 해결할 수 있다. 후술될 바와 같이, 도 3A 및 3B는 중앙 집중된 서버를 사용하는 종래의 시스템을 도시하고 있고, 반면에 도 4A, 4B, 4C는 본 발명에 따른 분배된 서버 시스템을 도시하고 있다.Such distributed server systems, when used to distribute time-critical multimedia content, can solve the inherent problems of current centralized server systems. As will be described below, FIGS. 3A and 3B show a conventional system using a centralized server, while FIGS. 4A, 4B and 4C show a distributed server system according to the present invention.

도 3A는 유저의 사이트에 설치될 수 있는 종래의 엔드 노드 장치의 간략화된 블록도이다. 이는 일반적으로 TV에 연결된 셋톱 박스("STB")이다. STB는 일반적으로 케이블 모뎀, 디지털 비디오 및 오디오 압축해제 회로를 구비하고 있다. 도 3B에 도시된 바와 같이, 멀티미디어 서버(1)는 모든 멀티미디어 컨텐트를 저장한 컨텐트 데이터 베이스(13)를 제어한다. 네트워크 스위치(2)는 서버, 네트워크 스위치(3) 및 네트워크 스위치(4)사이의 데이터의 전송을 제어한다. 네트워크 스위치(3)는 네트워크 스위치(2)로부터 유저 엔드 노드(5 내지 8)로 데이터를 전송하고, 네트워크 스위치(4)는 네트워크 스위치(2)로부터 유저 엔드 노드(9 내지 12)로 데이터를 전송한다. 본 실시예에서, 엔드 노드(5, 8, 9, 11)는 중앙집중된 서버(1)로부터 멀티미디어 데이터를 수신한다. 서버(1) 및 스위치(2)는 장거리로 이격될 수 있고, 이는 고가의 높은 대역폭 접속을 필요로 한다.3A is a simplified block diagram of a conventional end node device that may be installed at a user's site. This is usually a set top box ("STB") connected to a TV. STBs typically have cable modems, digital video and audio decompression circuits. As shown in FIG. 3B, the multimedia server 1 controls the content database 13 that stores all the multimedia content. The network switch 2 controls the transfer of data between the server, the network switch 3 and the network switch 4. The network switch 3 transmits data from the network switch 2 to the user end nodes 5 to 8, and the network switch 4 transmits data from the network switch 2 to the user end nodes 9 to 12. do. In this embodiment, the end nodes 5, 8, 9, 11 receive multimedia data from the centralized server 1. The server 1 and the switch 2 can be spaced long distances, which requires expensive high bandwidth connections.

엔드 노드(5, 8)에서의 컨텐트 데이터 스트림(A, B)은 스위치(2)에서 스위치(3)로 경로가 지정되고, 엔드 노드(9, 11)에서의 컨텐트 데이터 스트림(C, D)은 스위치(2)에서 스위치(4)로 경로가 지정된다. 스위치(3)는 자신이 수신한 데이터를 엔드 노드(5, 8)로 경로를 지정하고, 스위치 유닛(4)은 자신이 수신한 데이터를 엔드 노드(9, 11)로 경로를 지정한다. 이 시스템에서, 모두 네개의 데이터 스트림(A 내지 D)은 서버(1), 스위치(2) 및 스위치(3, 4)를 통해서 컨텐트 베이스(13)로부터 와야한다. 멀티미디어 데이터의 시간 중심 특성으로 인해 컨텐트 데이터 베이스(13)와 엔드 유저 사이의 모든 구성 요소 및 네트워크 상호 접속부는 낮은 지연인, 초고속이여야 한다. 도 3A 및 도 3B에서의 시스템은 특히 많은 수의 엔드 노드가 동시에 데이터를 요청할 때, 분명히 그 한계를 가질 것이다.The content data streams (A, B) at the end nodes (5, 8) are routed from switch (2) to switch (3), and the content data streams (C, D) at end nodes (9, 11). Is routed from switch 2 to switch 4. The switch 3 routes the data received by itself to the end nodes 5 and 8, and the switch unit 4 routes the data received by the switch to the end nodes 9 and 11. In this system, all four data streams A through D must come from the content base 13 via the server 1, the switch 2 and the switches 3, 4. Due to the time-centric nature of the multimedia data, all components and network interconnections between the content database 13 and the end user must be high speed, low latency. The system in Figures 3A and 3B will obviously have its limitations, especially when a large number of end nodes request data at the same time.

도 4A는 TV로 디지털 비디오를 시청하기 위한 고객 지향 엔드 노드 장치를 도시하고 있다. 그 STB는 케이블 모뎀, 디스크 저장장치와 같은 저장 유닛, 및 디지털 비디오 및 오디오 복조회로를 포함한다. 물론 케이블로부터의 프로그램을 표시하기 위한 TV가 있다. 도 4B는 예를들어 디스크 저장 장치와 같은 저장 유닛을 구비한 PC로, 데이터를 획득하기 위한 케이블 모뎀 또는 DSL 모뎀을 사용해서, 디지털 비디오를 시청하는 PC 지향 장치를 도시하고 있다.4A illustrates a customer oriented end node device for watching digital video on a TV. The STB includes cable modems, storage units such as disk storage, and digital video and audio demodulation circuits. Of course there is a TV for displaying the program from the cable. 4B shows a PC-oriented device for watching digital video using a cable modem or DSL modem for acquiring data, for example with a PC having a storage unit such as a disk storage device.

도 4B에 도시된 바와 같은 PC 기반 엔드 노드 장치에서, 그 동작은, 실시간 프로토콜(RTP) 및 실시간 스트리밍 프로토콜(RTSP)이라 불리는 다수의 인터넷 프로토콜을 지원하는 Sun의 Java Media Framework(JMF)에 기록된 소프트웨어에 의해 제어될 수 있다. 이들 소프트웨어 프로그램은 일반적으로 당업자에 의해 "기성품"으로 고려되고, 그 성능 또한 당업자에게는 잘 알려져 있다. 자바 프로그램은 데이터의 전송을 용이하게 하기 위해 JMF 라이브러리를 사용해서 기록될 수 있고, 자체의 전송 엔드 노드를 지원하도록 프로그래밍되고, 다른 프로그램이 그 수신 엔드 노드를 지원하도록 프로그래밍된다. 당업자는 소프트웨어가 PC가 대응하는 태스크를 제어하도록 기록될 수 있다는 것을 이해할 것이다.In a PC-based end node device as shown in FIG. 4B, the operation is recorded in Sun's Java Media Framework (JMF) that supports multiple Internet protocols called Real Time Protocol (RTP) and Real Time Streaming Protocol (RTSP). It can be controlled by software. These software programs are generally considered "off-the-shelf" by those skilled in the art and their performance is also well known to those skilled in the art. Java programs can be written using the JMF library to facilitate the transfer of data, are programmed to support their sending end nodes, and other programs are programmed to support their receiving end nodes. Those skilled in the art will appreciate that software may be written such that the PC controls the corresponding task.

현재, 실연(demonstration) 및 원형 유닛에서, 수신 PC를 실행하는 사람은 http://www.javasoft.com에서 다운로드해서 사용할 수 있는 Sun Java Development Kit(JDK) 소프트웨어를 설치하고, 예를들어 서비스 회사로부터의 이메일을 통해서 수신기 소프트웨어를 획득할 수 있다.Currently, in demonstration and prototype units, the person running the receiving PC installs the Sun Java Development Kit (JDK) software, which can be downloaded and used at http://www.javasoft.com, for example, a service company. Receiver software can be obtained via email from.

엔드 노드 장치를 동작시키는 소프트웨어의 제품 버전에서 엔드 유저는 회사의 웹 사이트를 방문해서 온라인 상의 송수신 소프트웨어를 설치할 수 있다. PC를 켜거나 재시작할 때, 송수신 소프트웨어가 시작될 수 있도록, PC의 시작 디렉토리에 자동 시작 소프트웨어 루틴이 설치될 수 있다. 많은 사람이 단일 PC를 공유할 수 있기 때문에 설치 프로그램은 PC와 현재의 PC 유저를 식별하기 위해 특정 파일(이 특정 파일은 통상적으로 "cookie"파일로 알려져 있다)에 개인 정보를 포함할 수 있다.In the product version of the software that runs the end node device, the end user can visit the company's Web site and install the transmit and receive software online. Autostart software routines can be installed in the PC's startup directory so that the transceiver software can be started when the PC is turned on or restarted. Because many people can share a single PC, the installer can include personal information in a specific file (which is commonly known as a "cookie" file) to identify the PC and the current PC user.

엔드 노드 장치가 시작시에 개시될 수 있는 방법이 후술된다. 당업자는 자신만의 시작 경로 및 프로토콜을 용이하게 고안해낼 수 있고, 본 발명에 따른 차체적인 분배 시스템을 개발할 수 있다는 것에 주목해야 한다. 후술하는 설명은 단지 예시의 목적일 뿐이다. 개시시에, 예를들어 PC인 엔드 노드 장치에 있는 송수신 프로그램은 제공자의 웹 사이트에 있는 제어 소프트웨어에 메시지를 전송해서, 식별정보를 전송하는 것은 물론, 요청하면 송수신할 준비가 되었다는 것을 알린다. 이 알림을 수신하면, 서비스 제공자의 제어 소프트웨어는 특정 PC가 이용가능하다는 것을 안다.The method by which the end node device can be started at startup is described below. It should be noted that those skilled in the art can easily devise their own starting route and protocol, and develop a vehicle body distribution system according to the present invention. The following description is for illustrative purposes only. At initiation, a transmission / reception program at the end node device, for example a PC, sends a message to the control software at the provider's web site, not only sending identification information, but also notifying that it is ready to send and receive on request. Upon receiving this notification, the service provider's control software knows that a particular PC is available.

일단 서비스 제공자의 서버가 엔드 유닛이 유용하다는 것을 알면,Once the service provider's server knows that the end unit is useful,

-명령어 및 데이터를 수신하는 엔드 유닛에 새로운 컨텐트를 추가하고,Add new content to the end unit receiving instructions and data,

-명령어를 수신하는 엔드 유닛의 오래된 컨텐트를 제거하고,Remove old content from the end unit receiving the command,

-명령어를 수신하는 엔드 유닛에 현재의 컨텐트를 전송하고,Send the current content to the end unit receiving the command,

-다른 메인터넌스 테스크를 탬퍼하거나 수행하기 위해 현재의 컨텐트를 점검하기 위해 명령어 및 데이터를 전송할 수 있다.Commands and data can be sent to check the current content to tamper with or perform other maintenance tasks.

일 실시예에서, 제어 소프트웨어는 특정 PC가 더 이상 유용하지 않은 시기를 알아야 할 필요가 있을 수 있다. 이 시나리오는 유저가 PC를 끌 때, PC에 충돌이 발생했을 때, 유저의 전원이 차단되었을 때, 또는 케이블 네트워크가 간단히 작업을 중지했을 때 즉, 갑작스럽지 않게 PC의 제어 소프트웨어는 전력 차단을 식별할 수 있고, 서버에 더이상 유용하지 않음을 알리는 메시지를 전송할 수 있다.In one embodiment, the control software may need to know when a particular PC is no longer useful. In this scenario, when the user turns off the PC, when the PC crashes, when the user loses power, or when the cable network simply stops working, that is, suddenly, the control software on the PC identifies the power cut. You can do this and send a message to the server saying it is no longer useful.

만약 제공자의 서버로의 통지없이 PC에서 충돌이 발생하거나 그 기능을 상실했을 때, 분배 시스템은 시청하는 유저의 경험을 상하게 하지 않게 회복되어야 하는 것이 바람직하다. 일련의 전송이 설정되면, 즉, 다른 엔드 노드 유닛의 시청자가 영화를 보기를 원하기 때문에 서버는 그 서버가 유용하다고 생각하는 모든 엔드 유닛에 대해서 통계를 즉시 점검할 수 있다. 만약 엔드 노드 유닛이 응답에 실패하면, 서버는 그 엔드 노드를 유용하지 않다고 표시할 수 있고, 다른 엔드 노드 유닛으로 바꾼다. 초기 전송 리스트는 유용하다고 승인되었던 엔드 노드 유닛으로 항상 착수된다.If a crash or loss of functionality occurs on the PC without notification to the provider's server, it is desirable that the distribution system be recovered so as not to compromise the viewing user's experience. Once a series of transmissions have been established, that is, the viewer of another end node unit wants to watch the movie, the server can immediately check the statistics for all the end units that the server finds useful. If the end node unit fails to respond, the server may mark the end node as not useful and switch to another end node unit. The initial transfer list is always launched with end node units that have been approved as useful.

일단 영화가 시작되면, 수신 PC는 임의의 시간까지 각각의 전송 PC로부터의데이터를 기대한다. 만약 충돌이 발생해서, 하나의 PC가 계획된 시간까지 데이터를 전송하지 않으면, 수신 PC는 제공자의 서버에 통지할 수 있다. 서버는 대치되는 엔드 유닛에 전송 리스트의 나머지 부분을 제공하고, 대치되는 유닛의 인터넷 주소의 수신 유닛을 통보함으로써 즉시 다른 엔드 유닛으로 대치할 수 있다. 전송을 용이하게 하기 위해, 제공자는 대치되는 엔드 유닛이 속도를 높일 때 까지 몇초동안 수신 엔드 유닛에 지연된 컨텐트를 제공하는 백업 서버를 보유할 수 있다.Once the movie has started, the receiving PC expects the data from each transmitting PC until a certain time. If a collision occurs and one PC does not transmit data by the scheduled time, the receiving PC can notify the provider's server. The server can replace the other end unit immediately by providing the rest of the transmission list to the replacing end unit and notifying the receiving unit of the Internet address of the replacing unit. To facilitate delivery, the provider may have a backup server that provides delayed content to the receiving end unit for a few seconds until the opposing end unit speeds up.

도 4C를 참조한다. 도 4C에 도시된 바와 같이, 컨텐트 데이터베이스(13)는 전체 분배 시스템에 대해 그 의무의 일부를 경감시킬 수 있도록 설정된다. 모든 멀티미디어 데이터는 각각의 유저 엔드 노드(도시생략) 각각의 유저와 노드의 저장 유닛과의 사이에서 분배된다. 모든 엔드 유저 노드가 로컬 저장 유닛을 구비할 필요는 없고, 엔드 유저 노드가 저장 유닛을 구비하고, 분배에 참여할 수록 시스템의 성능은 향상된다. 멀티미디어 서버(1)는 중앙 집중된 관리자의 역할을 해서 멀티미디어 컨텐트가 엔드 유저 노드 사이에서 분배되는 방식의 트랙을 유지한다. 멀티미디어 데이터없이 단지 명령어와 상태 정보만을 전송하면 되고, 그 저장 장치는 엔드 노드 사이에서 분배되기 때문에 서버(1)와 스위치(2)사이의 네트워크 접속은 더 적은 대역폭을 필요로 한다. 당업자가 이해하는 바와 같이, 각각의 엔드 노드에서의 저장 유닛은 하드 디스크 드라이브가 될 수 있고, 일부 저장 디바이스는 그 멀티미디어 컨텐트를 저장하고, 전송하고, 재생할 수 있다. 기술의 발달에 의한 저장 디바이스의 가격하락에 따라 이러한 형태의 분배된 저장 장치는 더 활성화되고 가격에서도 이득이다.See Figure 4C. As shown in FIG. 4C, the content database 13 is set up to relieve some of its obligations to the entire distribution system. All multimedia data is distributed between the user of each user end node (not shown) and the storage unit of the node. Not all end user nodes need to have a local storage unit, and as end user nodes have a storage unit and participate in the distribution, the performance of the system is improved. The multimedia server 1 acts as a centralized administrator to keep track of how multimedia content is distributed among end user nodes. The network connection between the server 1 and the switch 2 requires less bandwidth because only the commands and status information need to be transmitted without the multimedia data, and the storage device is distributed among the end nodes. As will be appreciated by those skilled in the art, the storage unit at each end node may be a hard disk drive, and some storage devices may store, transmit, and play the multimedia content. As the price of storage devices decreases due to advances in technology, this type of distributed storage becomes more active and profitable in price.

도 4C에 도시된 시스템에 있어서, 엔드 노드(5)는 멀티미디어 컨텐트(A)를 필요로 하고, 엔드 노드(8)는 멀티미디어 컨텐트(B)를 필요로 하고, 엔드 노드(9)는 멀티미디어 컨텐트(C)를 필요로 하고, 엔드 노드(11)는 멀티미디어 컨텐트(D)를 필요로 하는 반면에, 엔드 노드(6)의 저장 유닛은 멀티미디어 컨텐트(A)를 포함하고, 엔드 노드(9)의 저장 유닛은 멀티미디어 컨텐트(B)를 포함하고, 엔드 노드(10)의 저장 유닛은 멀티미디어 컨텐트(C, D)를 포함하고, 엔드 노드(12)의 저장 유닛은 멀티미디어 컨텐트(B)를 포함한다.In the system shown in FIG. 4C, the end node 5 needs multimedia content A, the end node 8 needs multimedia content B, and the end node 9 has multimedia content ( C) and the end node 11 needs multimedia content D, while the storage unit of the end node 6 contains the multimedia content A and the storage of the end node 9. The unit comprises multimedia content B, the storage unit of end node 10 comprises multimedia content C and D, and the storage unit of end node 12 comprises multimedia content B.

도 4C에 도시된 바와 같이, 컨텐트 데이터 베이스(13)로부터 또는 컨텐트가 이용될 수 있는 곳으로부터 엔드 노드로 다양한 컨텐트를 전송하기 위해 분배된 저장 시스템이 멀티미디어 서버(1)에 의해 이용될 수 있다. 분배는 임의의 컨텐트의 예상되는 인기도 및 엔드 노드가 동일한 스위치 네트워크내에 있는지 여부에 기초할 수 있다. 예를들어, 200개의 엔드 노드가 동일한 인접한 스위칭 네트워크를 공유하고 있다면, 예를들어 같은 이웃에서 새로 개봉한 영화는 안정된 전송을 위해 10개의 엔드 노드에 존재할 필요가 있다. 만약에 지연이 심각하지 않으면, 다른 동일하지 않은 스위칭 네트워크에 있는 엔드 노드로부터 전송되어 올 수 있다. 다른 190개의 엔드 노드는 단편, 전체 또는 조합된 형태로 다른 컨텐트를 가지고 존재할 수 있다. 요구사항이 변함에 따라서 위치 및 분배는 통계분석용의 일반적인 툴을 사용해서 위치가 추적될 수 있는 사용법을 반영하도록 확실히 변할 수 있기 때문에, 이는 단지 초기 단계이다.As shown in FIG. 4C, a distributed storage system may be used by the multimedia server 1 to transfer various content from the content database 13 or from where the content may be available to the end node. The distribution may be based on the expected popularity of any content and whether the end nodes are in the same switch network. For example, if 200 end nodes share the same adjacent switching network, for example, a newly released movie in the same neighborhood needs to exist at 10 end nodes for stable transmission. If the delay is not severe, it may come from an end node in another unequal switching network. The other 190 end nodes may exist with different content in fragments, in whole, or in a combined form. As the requirements change, this is only an initial step, since the location and distribution can be reliably changed to reflect usage where the location can be tracked using the usual tools for statistical analysis.

또한, 개시 또는 수반되는 위치 관리는 고객으로부터의 간섭이 필요없기 때문에, 비-피크 시간 동안 행해질 수 있다. 따라서, 새벽 3시에 대부분의 고객이 잠자는 동안, 그들의 엔드 노드에서의 저장 유닛은 많은 명령어를 바람직하게는 중앙 서버로부터 수신하고, 컨텐트를 전송하고, 중아 서버를 업데이트할 수 있다. 새로운 컨텐트가 등장함에 따라서, 새로운 컨텐트는 오래된 컨텐트가 점진적으로 또는 한번에 삭제되거나 대치되게 할 것이다. 분배된 저장 시스템은 다이나믹해서, 고객의 영구적으로 변하는 욕구를 적절하게 지속적으로 만족시킬 수 있다.In addition, initiation or accompanying location management can be done during non-peak time, as no interference from the customer is required. Thus, while most customers sleep at 3 am, the storage units at their end nodes can receive many commands from the central server, preferably send content and update the central server. As new content emerges, new content will cause old content to be deleted or replaced gradually or all at once. The distributed storage system is dynamic, allowing it to consistently and consistently satisfy customers' permanently changing needs.

이 컨텐트의 저장이 분배되기 때문에, 엔드 노드(6)는 엔드 노드(5)에서 서버로서의 역할을 한다. 만약 두 노드 사이의 네트워크 접속이 공유된 매체라면, 엔드 노드(6)가 컨텐트(A) 데이터를 엔드 노드(5)에 직접전송하는 것이 가능하게 될 것이고, 그렇지 않으면, 컨텐트(A)를 스위치(3)로 전송함으로써 엔드 노드(5)로 전송하고, 종래의 인터넷 또는 데이터 통신망 어드레싱 기술을 사용해서 노드(5)로 전송할 것이다. 멀티미디어 서버(1)는 엔드 노드(5)로부터의 요청을 수신하고, 요청된 컨텐트의 가용성을 점검하고, 예를들어 엔드 노드(6)로부터 가장 편리한 전송 방식을 결정하고, 컨텐트(A)를 엔드 노드(5)에 전송하도록 엔드 노드(6)에 명령하기 위해 "트래픽 제어기"의 역할을 할 수 있는 것이 바람직하다.Since the storage of this content is distributed, the end node 6 acts as a server at the end node 5. If the network connection between the two nodes is a shared medium, it will be possible for the end node 6 to send content (A) data directly to the end node 5, otherwise, switch the content (A) ( 3) to end node 5, and to node 5 using conventional internet or data network addressing techniques. The multimedia server 1 receives a request from the end node 5, checks the availability of the requested content, for example determines the most convenient transmission method from the end node 6, and ends the content A. It is desirable to be able to act as a "traffic controller" to instruct the end node 6 to transmit to the node 5.

도 4C를 다시 참조하면, 엔드 노드(6)가 컨텐트(A)를 엔드 노드(5)로부터 요청한 것에 응답할 때, 엔드 노드(6)에서의 시청자는 이러한 컨텐트(A)를 재생하기 위해 요청한다. 이런 상황에서, 데이터는 예를들어, 하드 드라이브와 같은 저장 유닛에서 PC 또는 STB등의 프로세서의 메모리로 판독될 수 있다. 이후에 데이터는 프로세서의 메모리로부터 케이블 또는 DSL 네트워크로 전송된다. 만약 동일한 데이터가 지역 방송과 매우 가까운 시간에 전송된다면, 그 데이터는 메모리 내에 캐시되어서 로컬 디스플레이에 전송될 수 있다. 만약 메모리내에 캐시되지 않는다면, 데이터는 하드 드라이브로부터 재판독될 수 있다. 당업자가 이해하고 있는 바와 같이, STB는 물론이고 고속 프로세서와 통신 기능을 구비한 현재의 PC 시스템은 두 세트의 판독요청을 동시에 처리할 수 있다.Referring again to FIG. 4C, when the end node 6 responds to requesting content A from the end node 5, the viewer at the end node 6 requests to play this content A. FIG. . In such a situation, data can be read into a memory of a processor such as a PC or STB, for example, in a storage unit such as a hard drive. The data is then transferred from the processor's memory to the cable or DSL network. If the same data is sent very close to the local broadcast, the data can be cached in memory and sent to the local display. If not cached in memory, data can be read back from the hard drive. As will be appreciated by those skilled in the art, STBs as well as current PC systems with high speed processors and communication capabilities can simultaneously handle two sets of read requests.

중앙집중된 트래픽 제어기의 역할을 하는 멀티미디어 서버의 대안은 각각의 엔드 노드가 그 요청을 다른 엔드 노드에 브로드캐스트하게 하는 것이다. 요청된 컨텐트를 구비한 이 엔드 노드는 요청된 컨텐트에 대해서 최상의 소스인지를 판정하기 위해 전송 상태를 모니터할 것이다. 그렇다면, 이에 응답해서 요청자에게 요청된 컨텐트를 전송할 것이다. 그 요청에 대한 응답이 다수 존재하면, 요청된 엔드 노드는 수신을 위해 우선순위를 판정해서 전송을 위한 우선순위의 소스 엔드 노드를 식별할 것이다. 전송이 막히면, 요청 노드는 우선 순위에 따라 다음 소스 엔드 노드로 갈 수 있다. 제 2 소스 엔드 노드는 제 1 소스 엔드 노드가 떠난 위치를 픽업하기 위해 전송할 수 있다.An alternative to a multimedia server that acts as a centralized traffic controller is to have each end node broadcast its request to another end node. This end node with the requested content will monitor the delivery status to determine if it is the best source for the requested content. If so, it will send the requested content to the requestor in response. If there are multiple responses to the request, the requested end node will determine the priority for reception and identify the source end node of priority for transmission. If the transmission is blocked, the requesting node can go to the next source end node in priority order. The second source end node may send to pick up the location where the first source end node left.

유사하게, 엔드 노드(9)는 엔드 노드(8)에 대해 서버의 역할을 해서 컨텐트(B)를 전송하고, 동시에, 엔드 노드(10)로부터 컨텐트(C)를 수신한다. 엔드 노드(10)는 컨텐트(C, D)를 저장해서 컨텐트(C)를 엔드 노드(9)에 전송하고, 동시에 컨텐트(D)를 엔드 노드(11)에 전송함으로써 서버로서의 역할을 할 수 있다.Similarly, the end node 9 acts as a server for the end node 8 to transmit content B, and at the same time receives the content C from the end node 10. The end node 10 may serve as a server by storing the contents C and D and transmitting the contents C to the end nodes 9 and simultaneously transmitting the contents D to the end nodes 11. .

엔드 노드는 자체만으로는 서버가 되어서는 안된다. 이들은 전송을 완료하기 위해 다른 엔드 노드와 함께 경시적으로 또는 동시에 역할을 수행한다. 엔드노드(8)는 엔드 노드(9) 및 엔드 노드(12) 모두로부터 컨텐트(B)를 수신할 수 있다. 이는 컨텐트(B)의 전송시간을 감소시키는데 특히, (엔드 노드에서 스위치로의)업로드 속도가 다운로드(스위치로부터 엔드 노드로)속도보다 더 낮을 때, 바람직할 수 있다. 이는 케이블 모뎀 및 ADSL(비대칭 디지털 가입자선)네트워크 기술에서는 흔히 있는 경우이다. 전체 컨텐트가 엔드 단부로 다운로드되기 전에 컨텐트의 재생이 시작되는 지점에서는 더욱 유용한다. 예를들어, 엔드 노드(9)에서 엔드 노드(8)로의 다운로드의 초기 부분의 속도에 기초해서, 컨텐트(B)의 재생은 엔드 노드(9)로부터의 다운로드가 컨텐트의 끝이 도달하기 이전에 완료될 것으로 예상된다면, 컨텐트(B)의 재생이 개시될 수 있다. 그러나, 일단 재생이 시작되면, 스위치(4)로부터 스위치(3)로의 예상치 못한 네트워크 혼잡으로 인해 다운로드 속도가 줄어들거나, 또는 스위치(9)로부터 스위치(8)로의 예상치 못한 혼잡으로 인해 업로드 속도가 줄어드는 경우에, 컨텐트(B)의 미시청 부분은 엔드 노드(12)로부터 엔드 노드(8)로 전송될 수 있다.End nodes should not be servers on their own. They play a role over time or simultaneously with other end nodes to complete the transfer. End node 8 may receive content B from both end node 9 and end node 12. This reduces the delivery time of the content B, which may be desirable, especially when the upload speed (from the end node to the switch) is lower than the download (switch to the end node) speed. This is common in cable modem and asymmetric digital subscriber line (ADSL) network technologies. It is more useful at the point where the playback of content begins before the entire content is downloaded to the end end. For example, based on the speed of the initial portion of the download from the end node 9 to the end node 8, playback of the content B may occur before the download from the end node 9 reaches the end of the content. If expected to be completed, playback of content B may begin. However, once playback starts, the download speed may decrease due to unexpected network congestion from switch 4 to switch 3, or the upload speed may decrease due to unexpected congestion from switch 9 to switch 8. In that case, the unviewed portion of content B may be sent from end node 12 to end node 8.

예로서, 엔드 노드(8)가 컨텐트(B)의 25%를 엔드 노드(9)로부터 수신했다고 가정해 보자. 컨텐트의 재생 속도 뿐만 아니라 컨텐트의 25%의 다운로드 속도에 기초해서, 엔드 노드(9)는 재생을 시작한다. 이 예에서, 재생 속도는 다운로드 속도와 동일하다. 30% 수신 지점에서, 다운 로드 속도는 2만큼 느려진다. 만약 다운로드 속도가 증가되지 않으면, 컨텐트(B)의 재생은 영화 또는 노래의 90%에서 중지될 것이다. 즉 35%에서 엔드 노드(12)는 컨텐트(B)의 마지막 20%의 전송을 즉시 시작할 것을 명령받을 것이고, 엔드 노드(9)는 35% 지점에서 컨텐트의 전송을 즉시계속해서 80%지점에서 중지할 것을 명령받을 것이다. 이 방법은 업로드 전송 속도 또는 스위치 대 스위치 전송 속도가 다운로드 전송 속도보다 낮을 때 유용할 수 있다.As an example, assume that end node 8 has received 25% of the content B from end node 9. Based on the playback speed of the content as well as the 25% download speed of the content, the end node 9 starts playback. In this example, the playback speed is the same as the download speed. At the 30% receiving point, the download speed is slowed by two. If the download speed is not increased, playback of content B will stop at 90% of the movie or song. That is, at 35%, the end node 12 will be instructed to immediately begin delivering the last 20% of the content B, and the end node 9 will immediately continue to deliver the content at 35% and stop at 80%. You will be commanded to do so. This method may be useful when the upload transfer rate or switch to switch transfer rate is lower than the download transfer rate.

여러 노드로부터 동시에 전송하는 방법은 데이터 재생 속도 및 다운로드 속도가 데이터 업로드 속도보다 더 높은 네트워크에서 재생 시작 시간을 감소시키기 위해 사용될 수도 있다. 예를들어, 재생 속도가 초당 2메가비트이고, 다운로드 속도가 초당 3메가비트까지 가능하고, 단일 엔드 노드에서의 업로드 속도는 초당 1 메가비트라고 가정하자. 도 5A에 도시된 네트워크에서, 엔드 노드(5)는 엔드 노드(6 내지 15)에 상이한 단편으로 저장된 컨텐트(A)를 재생하기를 원한다. 상이한 노드에서의 단편의 위치에 대한 정보는 바람직하게는 멀티미디어 서버(1)에 저장될 수 있는 것이 바람직하다. 상이한 노드의 업로드 및 다운로드 성능은 멀티미디어 서버(1)에 저장될 수 있고, 혹은 업로드 및 다운로드 속도를 측정하기 위해 테스트 전송을 할 수도 있다.The method of transmitting from multiple nodes simultaneously may be used to reduce playback start time in a network where the data playback speed and download speed are higher than the data upload speed. For example, suppose the playback speed is 2 megabits per second, the download speed is up to 3 megabits per second, and the upload speed on a single-ended node is 1 megabit per second. In the network shown in FIG. 5A, the end node 5 wants to play the content A stored in different fragments at the end nodes 6-15. The information about the location of the fragments at different nodes is preferably able to be stored in the multimedia server 1. The upload and download performance of different nodes can be stored in the multimedia server 1 or a test transfer can be made to measure the upload and download speed.

도 5A를 참조하면, 엔드 노드(5)가 멀티미디어 서버(1)와 접속하고, 이는 다른 엔드 노드로부터 엔드 노드(5)의 단편의 전송을 통합한다. 제 1 단계에서, 엔드 노드(6, 7, 8)는 그들의 저장된 단편을 엔드 노드(5)에 전송하고, 엔드 노드(5)는 각각의 전송 엔드 노드로부터의 각각의 단편이 단지 초당 1메가비트의 속도로 업로드될 수 있어도, 초당 3 메가비트의 속도로 세개의 단편을 동시에 수신한다. 엔드 노드(6)로부터 컨텐트의 0-5%를 포함하고 있는 단편이 절반의 재생 속도로, 전송되고 있기 때문에, 엔드 노드(5)는 단편의 전반부가 수신될 때까지 컨텐트의재생을 개시할 수 없다. 만약 더 빨리 재생을 개시하면, 데이터는 단편이 완전히 도달하기 이전에 정지되어서 재생중지를 야기시킨다.Referring to FIG. 5A, an end node 5 connects with the multimedia server 1, which integrates the transmission of a fragment of the end node 5 from another end node. In the first step, the end nodes 6, 7 and 8 send their stored fragments to the end node 5, where the end node 5 has each fragment from each transmitting end node being only 1 megabit per second. Even though it can be uploaded at, it will receive three fragments simultaneously at 3 megabits per second. Since the fragment containing 0-5% of the content from the end node 6 is being transmitted at half the playback speed, the end node 5 can start playing the content until the first half of the fragment is received. none. If you start playback sooner, the data stops before the fragment reaches full, causing playback to stop.

엔드 노드의 인터넷 주소가 고정되지 않은 경우가 가끔 있지만, 때때로 변할 수 있는 것은 아니다. 각각의 엔드 노드의 프로그램은 인터넷 주소가 바뀌면, 제어 멀티미디어 서버(1)에 알리도록 사용될 수 있다.Sometimes the Internet address of an end node is not fixed, but sometimes it can't change. The program of each end node can be used to inform the controlling multimedia server 1 when the Internet address changes.

엔드 노드(6, 7, 8)로 부터의 단편이 엔드 노드(5)에 전송되었을 때, 도 5B에 도시된 바와 같이, 멀티미디어 서버(1)는 필요한 단편을 포함하고 있는 엔드 노드(9, 10, 11)와 같은 다른 엔드 노드로부터 이후의 15~30%의 전송을 정렬할 수 있다. 엔드 노드(9, 10, 11)가 엔드 노드(5)로 데이터를 전송하고 있는 동안, 필요하다면, 엔드 노드(6, 7, 8)는 다른 엔드 노드에 데이터를 전송할 수 있게 된다.When the fragments from the end nodes 6, 7, 8 are sent to the end node 5, as shown in Fig. 5B, the multimedia server 1 includes the end nodes 9, 10 containing the necessary fragments. We can arrange for 15-30% of subsequent transmissions from other end nodes, such as. While the end nodes 9, 10, 11 are transmitting data to the end node 5, the end nodes 6, 7, 8 can, if necessary, transmit data to other end nodes.

하나의 컨텐트 데이터베이스 및 하나의 멀티미디어 서버가 설명을 위해 도 5B에 도시되어 있지만. 본 발명에 따른 전체 분배 시스템은 국가, 주, 군 전체에 흩어져 있는 다수의 멀티미디어 서버를 가지고 다수의 컨텐트 데이터 베이스를 실현할 수 있다는 것에 주목해야 한다. 하나의 엔드 유닛으로 전송 컨텐트는 여러개의 다른 엔드 유닛으로부터 올 수도 있지만, 일 이상의 컨텐트 서버로부터 올 수 있다. 이 "집단"효과는 하나의 특정 서버 또는 데이터베이스에 걸리는 부하를 덜 수 있고, 근접한 엔드 유닛에서의 데이터 베이스 및 서버로부터의 컨텐트 전송을 수행하는 효율적인 설계를 제공한다.Although one content database and one multimedia server are shown in FIG. 5B for explanation. It should be noted that the entire distribution system according to the present invention can realize multiple content databases with multiple multimedia servers scattered throughout the country, state, and county. Delivery content to one end unit may come from several different end units, but may come from one or more content servers. This "collective" effect can offload the load on one particular server or database and provide an efficient design for performing content transfers from the database and servers in close end units.

도 5B를 참조하면, 엔드 노드(5)가 시청 컨텐트(A)를 완성하였을 때, 그 저장 유닛은 컨텐트(A)의 모든 단편의 완성된 카피를 구비할 것이다. 만약컨텐트(A)가 다른 엔드 노드에서 인기가 많을 것이 예상되면, 즉, 신작 영화이면, 전체 컨텐트는 엔드 노드(5)에 저장되어 남아 있고, 그래서 다른 엔드 노드로 전송되거나 일부만이 유지될 수 있다. 이 엔드 노드에 어느 부분이 남아 있을지는 저장 또는 분배, 다른 엔드 노드에서의 컨텐트(A)의 상황에 기초해서 결정된다. 예를들어, 저장 상황은, 다른 엔드 노드가 충분한 다른 단편을 포함할 수 있기 때문에, 컨텐트(A)의 앞의 30%의 단편이 필요한 상황이 될 수 있다. 만약 컨텐트(A)가 당분간 시청되지 않을 것으로 예상된다면, 즉시 삭제될 수 있고, 혹은, 다른 컨텐트가 엔드 노드(5)의 저장 유닛에 저장될 필요가 있을 때는 제 1 컨텐트는 삭제되도록 지정된다.5B, when the end node 5 completes the viewing content A, the storage unit will have a completed copy of all fragments of the content A. FIG. If content A is expected to be popular at another end node, i.e. a new movie, the entire content remains stored at the end node 5, so that it can be transferred to another end node or only partially maintained. . Which portion remains in this end node is determined based on the situation of storage or distribution, content A in another end node. For example, the storage situation may be a situation where the front 30% fragment of content A is needed, since other end nodes may contain enough other fragments. If the content A is not expected to be watched for the time being, it can be deleted immediately, or the first content is designated to be deleted when other content needs to be stored in the storage unit of the end node 5.

도 7을 참조하면, 서버로 부터의 지시에 따라 엔드 노드 유닛으로 컨텐트를 분배하는 과정이 도시된다. 도 7에 도시된 바와 같이, 엔드 유저 유닛(EUU1)은 예를들어, EUU1이 엔드 유닛의 집에 설치된 이후에 중앙 서버(1)에 자신이 온라인이고, 활성화되었고, 준비되었다는 것을 통보한다. 이러한 통지시에, 중앙 서버는 데이터 블록(N)을 엔드 유저의 집에 전송한다. EUU2가 중앙 서버로부터 데이터 블록(N)을 요청하면, 중앙 서버는 데이터 블록(N)이 EUU1로부터 전송될 것이라는 것을 EUU2에 통보할 것이다. 이와 같이 중앙 서버는 EUU2에 요청된 데이터를 전송하도록 EUU1에 명령할 수 있다. 이 때, 인터넷 전송 주소는 EUU1의 것이고, 인터넷 수신 주소는 EUU2의 것이다. 요청된 데이터 블록을 수신할 때, EUU2는 전송이 완료되었음을 중앙 서버에 통지한다. 도 8A 및 8B를 참조하면, 본 발명에 따른 VOD 시스템의 다른 실시예가 도시된다. 상기 도 5A, 5B에 도시된 시스템에서 다수의엔드 노드가 단일 멀티미디어 서버(1)에 의해 전송받았다는 것에 주목해야 한다. 도 8A 및 도 8B는 본 시스템의 대안 또는 개량된 것이 도시되어 있고, 멀티미디어 서버의 기능이 개별적인 부분으로 분배되고, 본질적으로 부하가 줄어들어서, 컨텐트는 엔드 노드와 멀티미디어 컨텐트 서버와의 조합으로 전송된다. 컨텐트 전송은 다른 엔드 노드는 물론 분배된 컨텐트 서버에 의해 수행된다.Referring to FIG. 7, a process of distributing content to an end node unit according to an instruction from a server is illustrated. As shown in FIG. 7, the end user unit EUU1 informs the central server 1 that it is online, activated and ready for example after EUU1 is installed in the end unit's home. In this notification, the central server sends the data block N to the end user's home. When EUU2 requests data block N from the central server, the central server will notify EUU2 that data block N will be sent from EUU1. In this way, the central server may instruct EUU1 to transmit the requested data to EUU2. At this time, the Internet forwarding address is that of EUU1, and the Internet receiving address is that of EUU2. Upon receiving the requested data block, EUU2 notifies the central server that the transfer is complete. 8A and 8B, another embodiment of a VOD system in accordance with the present invention is shown. It should be noted that in the system shown in FIGS. 5A, 5B, multiple end nodes have been transmitted by a single multimedia server 1. 8A and 8B show an alternative or refinement of the present system, where the functionality of the multimedia server is distributed in separate parts, and the load is essentially reduced, so that the content is transmitted in combination with the end node and the multimedia content server. . Content delivery is performed by distributed content servers as well as other end nodes.

도 8A 및 8B에 도시된 시스템에서, 엔드 노드(C, D)는 개인용 컴퓨터 또는 가정에 통상적으로 존재하는 다른 기기다 될 수 있다. 제어 서버(A)는 제어 및 협력 롤을 수행하는 인터넷 서버 컴퓨터가 될 수 있다. 이 인터넷 서버 컴퓨터의 예로서는 Microsoft NT 운영체제를 사용하는 Compaq Proliant 서버 및 그 동등물을 들 수 있다. 웹 서버(B)는 인터넷 서버 컴퓨터이고, 그 예로서는 웹 페이지를 엔드 노드에 전송하지만, 멀티미디어 컨텐트를 유지할 수도 유지하지 않을 수도 있는 Sun Solaris 운영체제를 사용하는 Sun Microsystem의 Enterprise 서버 또는 그 동등물을 들 수 있다. 멀티미디어 컨텐트 서버(E, F)는 멀티미디어 컨텐트를 유지하는 인터넷 서버 컴퓨터가 될 수 있다. 비록 그 기능이 본 실시예에 대해서 분배되어 있지만, 인터넷 서버 컴퓨터가 제어, 웹 서빙 및 멀티미디어 컨텐트 서빙 기능을 임의의 조합으로 제어하고, 조합할 수 있는 것이 가능하고, 이는 당업자에 공지되어 있다.In the system shown in Figures 8A and 8B, the end nodes (C, D) can be personal computers or other devices typically present in the home. The control server A can be an Internet server computer that performs control and cooperative roles. Examples of this Internet server computer include a Compaq Proliant server using the Microsoft NT operating system and its equivalent. Web server (B) is an Internet server computer, for example, Sun Microsystem's Enterprise server or equivalent, which uses the Sun Solaris operating system to deliver web pages to end nodes, but may or may not maintain multimedia content. have. The multimedia content servers E and F may be Internet server computers that retain multimedia content. Although the functions are distributed for this embodiment, it is possible for an Internet server computer to control and combine the control, web serving and multimedia content serving functions in any combination, which is known to those skilled in the art.

도 8A 및 도 8B은 본 발명에 따른 VOD 시스템의 다른 실시예를 도시하고 있고, 이 실시예에서, 멀티미디어 데이터를 멀티미디어 컨텐트 서버와 엔드 노드의 조합으로부터 엔드 노드에 전송한다. 본 실시예는 멀티미디어 데이터를 단지 멀티미디어 컨텐트 서버로부터 엔드 노드 또는 다수의 엔드 노드에 전송하는 시스템을 구축하는 것을 가능하게 한다.8A and 8B show another embodiment of the VOD system according to the present invention, in which the multimedia data is transmitted from the combination of the multimedia content server and the end node to the end node. This embodiment makes it possible to build a system that only transfers multimedia data from a multimedia content server to an end node or multiple end nodes.

본 실시예에서 상술한 바와 같이, 영화 파일과 같은 멀티미디어 컨텐트는 더 작은 파일로 단편화될 수 있고, 더 작은 파일은 엔드 노드 및/또는 다른 서버에 의한 저장을 위해 분배될 수 있다. 이 실시예에서, 컨텐트 단편은 엔드 노드(C: 단계3), 엔드 노드(D: 단계4), 멀티미디어 컨텐트 서버(E:단계3), 및 멀티미디어 컨텐트 서버(F: 단계3)로 분배될 수 있다. 또한 본발명은 추가적인 엔드 노드 또는 서버에 파일 단편의 카피를 분배하는 것을 가능하게 해서 각각의 파일 단편이 일 이상의 엔드 노드 또는 서버에 존재할 수 있다. 이러한 중복은 엔드 노드 또는 서버를 다른 것으로 대치하는 것을 가능하게 할 수 있고, 이는 만약 엔드 노드 또는 서버가 데이터를 전송할 때 속도가 느리면, 유용하다. 데이터는 이들 엔드 노드 및 서버에 존재할 수 있고, 필요하다면, 전송될 수 있다.As described above in this embodiment, multimedia content such as movie files may be fragmented into smaller files, and the smaller files may be distributed for storage by end nodes and / or other servers. In this embodiment, the content fragments may be distributed to end nodes (C: step 3), end nodes (D: step 4), multimedia content servers (E: step 3), and multimedia content servers (F: step 3). have. In addition, the present invention makes it possible to distribute copies of file fragments to additional end nodes or servers such that each file fragment may exist on one or more end nodes or servers. Such redundancy may enable replacing an end node or server with another, which is useful if the end node or server is slow when sending data. Data may reside at these end nodes and servers and may be transmitted if necessary.

또한, 상술한 바와 같이, 시청 엔드 노드는 파일 단편을 원본 파일의 순서로 재 통합시킬 수 있는 일부 소프트웨어를 포함할 수 있다. 최종적으로, 영화 파일 단편을 보유하고 있는 엔드 노드 또는 인터넷 서버는 제어 서버로부터의 명령어를 수용하고, 파일 단편을 엔드 노드 또는 인터넷 서버에 전송하는 것을 가능하게 하는 일부 소프트웨어를 포함할 수 있다.In addition, as described above, the viewing end node may include some software that can reintegrate the file fragments in the order of the original file. Finally, the end node or internet server holding the movie file fragment may include some software that accepts instructions from the control server and enables the file fragment to be sent to the end node or internet server.

도 8A에서, 단계(1)는 엔드 노드(D)에서의 유저가 영화를 시청하기를 원할 때 발생한다. 유저는 영화 데이터를 위해 웹 서버(B)에 요청을 송신한다. 단계(2)에서, 웹 서버(B)는 요청을 제어 서버(A)로 전송한다. 제어 서버(A)는 어느 엔드 노드가 또는 인터넷 서버가 소망의 영화 파일 단편을 가지고 있는지 판정한다. 단계(3)에서 제어 서버(A)는 엔드 노드(C), 멀티미디어 컨텐트 서버(E), 및 멀티미디어 컨텐트 서버(F)에 명령어를 전송해서 소망의 영화 파일을 엔드 노드(D)에 전송한다. 단계(4)에서, 도 8B에 도시된 바와 같이, 엔드 노드(C), 멀티미디어 컨텐트 서버(E) 및 멀티미디어 컨텐트 서버(F)는 엔드 노드(D)에 영화 파일 단편을 함께 전송한다. 각각의 단편이 동일한 타이틀의 다른 단편에 대해 동일한 식별기호를 제공하도록 코드화되면, 다양한 단편의 재 통합, 또는 재 조립이 시청 엔드 노드에 의해 행해질 수 있다는 것은 이해될 것이다. 이러한 재 통합 또는 재 조립은 시청 엔드 노드가 시청 엔드 노드의 초기 요청에 대응해서 서버로부터 전송될 단편의 "스크립트"를 획득하는 것을 할 수 있다. 이 "스크립트"는 자전거 조립법에 나온 설명서와 같아서, 단편의 재 통합 및 재 조립을 용이하게 한다.In FIG. 8A, step 1 occurs when the user at the end node D wants to watch a movie. The user sends a request to the web server B for movie data. In step (2), the web server (B) sends a request to the control server (A). The control server A determines which end node or the Internet server has the desired movie file fragment. In step (3) the control server A transmits a command to the end node C, the multimedia content server E, and the multimedia content server F to transmit the desired movie file to the end node D. In step 4, as shown in FIG. 8B, the end node C, the multimedia content server E, and the multimedia content server F transmit together the movie file fragment to the end node D. FIG. It will be appreciated that if each fragment is coded to provide the same identifier for other fragments of the same title, reintegration, or reassembly, of the various fragments may be done by the viewing end node. This reintegration or reassembly may allow the viewing end node to obtain a "script" of the fragment to be sent from the server in response to the initial request of the viewing end node. This "script" is like the instructions in the bicycle assembly instructions, which facilitates reintegration and reassembly of the fragments.

일단 영화 타이틀 또는 데이터 파일이 단편화되면 각각의 단편은 전체 영화중 그 위치를 식별하는 동일한 코드를 가져야 한다는 것은 이해될 것이다. 바람직하게는, 영화 및 데이터 파일을 위치 코드화하는 표준 방식이 만들어지고, 유사하게, 인터넷 파일은 패킷화되어서 인터넷을 통해서 분배되어서 전송되고, 엔드 수신지에서만 조립된다.It will be appreciated that once a movie title or data file is fragmented each fragment should have the same code identifying its position in the entire movie. Preferably, a standard way of location coding of movie and data files is made, and similarly, Internet files are packetized and distributed over the Internet for transmission and assembly only at end destinations.

도시되지는 않았지만, 당업자는 웹서버(B)가 멀티미디어 컨텐트 서버의 역할을 할 수 있다는 것을 이해할 것이다.Although not shown, those skilled in the art will understand that the web server B can serve as a multimedia content server.

EUU에 의해서 저장되는 데이터의 각각의 단편은 보안을 목적으로 상이한 암호화 키를 이용해서 암호화될 수 있다. 예를들어, 만약 EUU가 5개의 프로그램으로부터 5개의 단편을 저장하면, 즉 1개의 프로그램으로부터 1개의 단편을 저장하면, 각각의 단편은 자체적인 암호화 키를 가질 수 있다. 암호화된 단편 또는 프로그램을 구비함으로써, 그 유저에 의해 EUU로의 권한이 인증되지 않은 액세스를 차단할 수 있다. 당업자가 이해하는 바와 같이, 각각의 EUU내의 저장 장치는, EUU가 전체 길이의 영화를 가지든 다양한 컨텐트의 단편의 집합을 가지든지 유저에게 투명한 것이 바람직하다.Each piece of data stored by the EUU may be encrypted using a different encryption key for security purposes. For example, if the EUU stores five fragments from five programs, that is, one fragment from one program, each fragment can have its own encryption key. By having an encrypted fragment or program, the user can block unauthorized access to the EUU. As will be appreciated by those skilled in the art, the storage device within each EUU is preferably transparent to the user, whether the EUU has a full length movie or a collection of fragments of various content.

상술한 바에 따라서, 본 발명은, 단일 엔드 노드로부터의 컨텐트의 업로드 전송 속도가 재생 엔드 노드의 재생 및 다운로드 속도보다 늦더라도, 다수의 네트워크화된 저장 노드 사이에서 컨텐트를 단편화하고, 컨텐트를 분배함으로써 대기시간을 최소화하면서 컨텐트의 연속적인 재생을 제공한다. 본 발명은 각각의 시청사이의 적은 지연으로 또한 여러개의 엔드 노드가 동일한 컨텐트를 시청하는 것을 가능하게 하고, 여기서 지연은 단편의 시간 지속에 의해 설정된다. 본 발명은 데이터의 양방향 전송에 의해 사용될 수 있다. 예를들어, 네트워크는 도 1에 도시된 케이블 TV 기술대신에, 또는 이와 관련해서 도 6에 도시된 DSL(디지털 가입자 회선) 기술을 사용할 수 있다.In accordance with the foregoing, the present invention is directed to fragmenting and distributing content among multiple networked storage nodes, even if the upload transmission rate of content from a single end node is slower than the playback and download rate of the playback end node. Provides continuous playback of content with minimal time. The present invention also allows for multiple end nodes to watch the same content with a small delay between each viewing, where the delay is set by the time duration of the fragment. The present invention can be used by bidirectional transmission of data. For example, the network may use the DSL (digital subscriber line) technology shown in FIG. 6 instead of or in connection with the cable TV technology shown in FIG.

데이터를 전송하는 본 발명이 분배된 저장 장치를 가진 주문형 비디오 시스템을 구현하는 것에 대해 설명했지만, 당업자는 본 발명이 "주문형 데이터" 시스템도 구현할 수 있다는 것을 이해할 것이다. 이러한 시스템에 있어서, 각각의 엔드 유저의 사이트의 저장 유닛은 다른 유저 또는 자신에 의한 액세스를 위해 데이터를 저장할 것이다. 예를들어, 저장을 제어하고, 추적하고, 관리하기 위해 중앙 서버를 통해서 데이터를 전송하고, 조립하는 메카니즘이 존재한다고 가정하면, 저장된 데이터는 상이한 종류의 데이터의 일부 또는 단편이 될 수 있고, 이들은 어디서든 다른 부분과 조립되어서 완전한 피스를 생성한다. 또한, 데이터 비밀 및 암호화를 구현하도록 이러한 네트워크를 관리하는 사람은 엔드 유저에 의한 저장된 데이터의 초대받지 않은 액세스를 방지하도록 조정해야할 필요가 있다.Although the present invention for transmitting data has been described for implementing an on-demand video system with distributed storage, those skilled in the art will understand that the present invention may also implement a "on-demand data" system. In such a system, the storage unit of each end user's site will store data for access by another user or himself. For example, assuming a mechanism exists to transfer and assemble data through a central server to control, track, and manage storage, the stored data can be part or fragment of different kinds of data, and these It is assembled with other parts anywhere to create a complete piece. In addition, the person managing such a network to implement data secrecy and encryption needs to coordinate to prevent uninvited access of stored data by end users.

당업자에게는 자명한 바와 같이, 본 발명은 종래의 일반 디지털 컴퓨터를 사용해서 구현될 수 있고, 본 발명의 기술에 따라 프로그래밍될 수 있다. 소프트웨어 분야에 종사하는 사람들에게는 자명한 바와 같이, 적절한 소프트웨어 코딩이 본 개시의 기술에 기초해서 숙련된 프로그래머에 의해 용이하게 행해질 수 있다.As will be apparent to those skilled in the art, the present invention can be implemented using a conventional general digital computer and can be programmed according to the techniques of the present invention. As will be apparent to those skilled in the software art, appropriate software coding can be readily performed by a skilled programmer based on the techniques of this disclosure.

당업자에게는 명백한 바와 같이, 본 발명은 또한, 어플리케이션 지정 집적회로를 조립하거나 종래의 소자 회로의 적절한 네트워크를 상호접속함으로써 구현될 수 있다.As will be apparent to those skilled in the art, the present invention may also be implemented by assembling application specific integrated circuits or interconnecting a suitable network of conventional device circuits.

본 발명은 또한 분배된 프로그램 또는 분배 네트워크의 컨텐트 흐름 제어와 같은 본 발명의 과정을 수행하기 위해, 컴퓨터를 프로그래밍하는데 사용될 수 있는 명령어를 포함하는 저장 매체인 컴퓨터 프로그램 제품을 포함한다. 저장 매체는 플로피 디스크를 포함하는 임의의 타입의 디스크, 광 디스크, CD-ROM, 자기-광 디스크, ROM, RAM, EPROM, EEPROM, 자기 또는 광학 카드, 또는 전자 명령을 저장하기에 적절한 임의의 타입의 매체를 포함할 수 있다. 본 발명은 실시한 장지가 동작될 때, 디바이스는 물리적인 현상이고, 디바이스를 적절한 방식으로 제어하는 신호를 처리해서 본 발명의 소망의 결과가 이루어진다.The invention also includes a computer program product, which is a storage medium containing instructions that can be used to program a computer to perform a process of the invention, such as a distributed program or content flow control of a distributed network. The storage medium may be any type of disk, including a floppy disk, optical disk, CD-ROM, magnetic-optical disk, ROM, RAM, EPROM, EEPROM, magnetic or optical card, or any type suitable for storing electronic instructions. It may include the medium of. When the device implemented is operated, the device is a physical phenomenon, and the desired result of the present invention is achieved by processing a signal for controlling the device in an appropriate manner.

분명하게, 본 발명의 다수의 변형 및 수정이 상기 기술에 기초해서 이루어질 수 있다. 따라서, 특별히 언급되지 않아도, 첨부된 청구범위의 범주내에서 본 발명은 실현될 수 있다.Obviously, many modifications and variations of the present invention can be made based on the above description. Accordingly, the present invention may be practiced without departing from the scope of the appended claims.

Claims (22)

통신망으로 요청 엔드 유저 유닛("요청 EUU")에 주문형 데이터를 전송하는 주문형 데이터 시스템에 있어서, 상기 주문형 데이터 시스템은:In an on-demand data system for transmitting on-demand data to a requesting end user unit ("request EUU") over a network, the on-demand data system is 적어도 하나("제 1 소스 EUU")가 상기 통신망을 통해서 데이터 파일을 수신하고, 상기 데이터를 저장하고, 상기 통신망을 통해서 상기 데이터 파일을 전송하기에 적합한 복수의 엔드 유저 유닛("EUU") 및A plurality of end user units (“EUUs”) suitable for at least one (“first source EUU”) to receive a data file via the communication network, to store the data and to transmit the data file via the communication network; 상기 복수의 EUU사이에서 상기 통신망을 통해서 데이터 파일의 전송을 지시하기에 적합한 서버,를 포함하고,A server suitable for directing transmission of a data file over said communication network between said plurality of EUUs, 상기 서버 및 상시 제 1 소스 EUU는;The server and always first source EUU; 상기 서버가 상기 통신망을 통해서 상기 데이터 파일을 상기 제 1 소스 EUU에 전송하게 하기에 적합하고,Suitable for causing the server to transmit the data file to the first source EUU via the communication network; 상기 데이터 파일을 상기 제 1 소스 EUU에 저장하기에 적합하고,Suitable for storing the data file in the first source EUU, 상기 요청 EUU로부터 수신된 명령어에 응답해서 상기 제 1 소스 EUU가 상기 데이터 파일을 상기 통신망을 통해서 상기 요청 EUU에 전송하게 하는 것을 상기 서버가 가능하게 하기에 적합한 것을 특징으로 하는 주문형 데이터 시스템.And the server is adapted to enable the server to cause the first source EUU to transmit the data file to the requesting EUU via the communication network in response to the command received from the requesting EUU. 제 1 항에 있어서, 상기 서버는 부가적으로 상기 제 1 소스 EUU의 상기 데이터 파일의 위치에 관한 정보를 추적하기에 적합한 것을 특징으로 하는 주문형 데이터 시스템.2. The on-demand data system of claim 1, wherein the server is additionally suitable for tracking information regarding the location of the data file of the first source EUU. 제 1 항에 있어서, 상기 데이터 파일은:The method of claim 1, wherein the data file is: 전체 멀티미디어 프로그램;Full multimedia program; 전체 멀티미디어 프로그램의 적어도 하나의 단편;At least one fragment of the entire multimedia program; 복수의 전체 멀티미디어 프로그램의 단편의 조합;중 적어도 하나를 포함한 것을 특징으로 하는 주문형 데이터 시스템.A combination of a plurality of fragments of the entire multimedia program; and at least one of the data systems on demand. 제 1 항에 있어서, 제 2 소스 EUU를 더 포함하고,The method of claim 1, further comprising a second source EUU, 상기 제 2 소스 EUU는 상기 데이터 파일이 상기 제 1 소스 EUU에 의해 저장되는 바와 같이, 상기 데이터 파일을 수신해서 저장하기에 적합하고,The second source EUU is suitable for receiving and storing the data file, as the data file is stored by the first source EUU, 상기 서버 및 상기 제 2 소스 EUU는 상기 제 1 소스 EUU로부터의 전송이 일 이상의 소정의 기준을 만족하면, 상기 제 2 소스 EUU가 상기 데이터 파일을 상기 요청 EUU에 전송을 시작하게 하기에 적합한 것을 특징으로 하는 주문형 데이터 시스템.The server and the second source EUU are suitable for causing the second source EUU to begin transmitting the data file to the requesting EUU if the transmission from the first source EUU meets one or more predetermined criteria. On-demand data system. 제 1 항에 있어서, 상기 서버는 상기 제 1 소스 EUU가 적어도 하나의 소정의 기준에 기초해서 상기 저장 장치내의 데이터 파일을 적어도 하나의 다른 데이터 파일로 대치하게 하기에 적합한 것을 특징으로 하는 주문형 데이터 시스템.2. The on-demand data system of claim 1, wherein the server is suitable for causing the first source EUU to replace a data file in the storage device with at least one other data file based on at least one predetermined criterion. . 데이터 통신망을 통해서 접속된 복수의 엔드 유저 유닛("EUU")에 주문형 데이터 파일을 전송하고, 관리하는 서버에 있어서, 상기 서버는:A server for transferring and managing on-demand data files to a plurality of end user units (“EUUs”) connected via a data communications network, the server comprising: 중앙 처리 장치("CPU");A central processing unit ("CPU"); 상기 CPU에 접속되어 동작하는 메모리;를 포함하고, 상기 메모리는 상기 CPU에 의해 수행되기에 적합한 프로그램을 포함하고,And a memory connected to and operated by the CPU, wherein the memory includes a program suitable for being executed by the CPU, 상기 CPU 및 상기 메모리는, 상기 복수의 EUU의 상기 데이터 파일의 위치를 추적하면서, 복수의 데이터 파일을 적어도 하나의 소정의 기준에 기초해서 저장하기 위해 상기 복수의 EUU로 분배해서 동작하기에 적합하고,The CPU and the memory are suitable for distribution and operation to the plurality of EUUs for storing the plurality of data files based on at least one predetermined criterion while tracking the location of the data files of the plurality of EUUs; , 상기 CPU 및 상기 메모리는, 적어도 하나의 데이터 파일에 대한 제 1 EUU로부터의 주문을 수신해서 동작하기에 적합하고,The CPU and the memory are suitable for receiving and operating an order from a first EUU for at least one data file, 상기 CPU 및 상기 메모리는, 제 2 EUU의 적어도 하나의 데이터 파일의 위치를 지정하고, 상기 요구에 따라 상기 제 1 EUU에 적어도 하나의 데이터 파일을 전송하도록 상기 제 2 EUU에 명령하기에 적합한 것을 특징으로 하는 서버.The CPU and the memory are suitable for specifying a location of at least one data file of a second EUU and instructing the second EUU to transfer at least one data file to the first EUU in accordance with the request. Server. 제 6 항에 있어서,The method of claim 6, 상기 CPU 및 상기 메모리는 제 1 데이터 파일 및 제 2 데이터 파일의 조합을 위해 제 3 의 EUU로부터의 주문을 수신해서 동작하기에 적합하고,The CPU and the memory are suitable for receiving and operating an order from a third EUU for a combination of a first data file and a second data file, 상기 CPU 및 상기 메모리는 제 4 EUU에 저장된 상기 제 1 데이터 파일과 제 5 EUU에 저장된 상기 제 2 데이터 파일의 위치를 지정하여 동작하기에 적합하고,The CPU and the memory are suitable for operation by designating a location of the first data file stored in a fourth EUU and the second data file stored in a fifth EUU, 상기 CPU 및 상기 메모리는 상기 주문에 따라 상기 제 4 및 상기 제 5 EUU에 상기 제 1 및 제 2 데이터 파일을 상기 제 3 EUU에 전송하도록 명령하여 동작하기에 적합한 것을 특징으로 하는 서버.The CPU and the memory are adapted to instruct the fourth and fifth EUUs to transfer the first and second data files to the third EUU in accordance with the order. 제 7 항에 있어서, 상기 제 3 EUU에 의해 주문된 상기 제 1 및 제 2 데이터 파일은 전체 데이터 파일로부터 2개의 단편을 구성하는 것을 특징으로 하는 서버.8. The server of claim 7, wherein the first and second data files ordered by the third EUU comprise two fragments from the entire data file. 제 7 항에 있어서, 상기 CPU 및 상기 메모리는 주문에 따라 복수의 데이터 파일의 위치를 지정하고 관리하고, 상기 데이터 파일의 전송 순서를 정하기에 적합하게 동작하는 것을 특징으로 하는 서버.8. The server according to claim 7, wherein said CPU and said memory are operative to designate and manage locations of a plurality of data files on an order basis and to determine a transmission order of said data files. 제 6 항에 있어서,The method of claim 6, 상기 CPU 및 상기 메모리는 상기 복수의 EUU 중에서 사용정보의 경로를 추적하기에 적합하도록 동작하고,The CPU and the memory are operative to track a path of usage information among the plurality of EUUs, 상기 CPU 및 상기 메모리는 상기 사용정보에 응답해서 저장하기 위해 상기 복수의 EUU사이의 데이터 파일을 재 분배하기에 적합하도록 동작하고,The CPU and the memory are operative to re-distribute data files between the plurality of EUUs for storage in response to the usage information, 상기 CPU 및 상기 메모리는 상기 새로운 데이터 파일이 이용가능할 때, 저장하기 위해 상기 복수의 EUU사이에서 분배하도록 새로운 데이터 파일을 추가하기에 적합하도록 동작하는 것을 특징으로 하는 서버.Said CPU and said memory operative to be adapted to add a new data file for distribution among said plurality of EUUs for storage when said new data file is available. 프로세서,Processor, 데이터 파일을 수신하기 위해 데이터 통신망과 접속되기에 적합한 모뎀,A modem suitable for connection with a data network to receive data files, 데이터 통신망에 접속된 서버로부터의 명령어에 응답해서 상기 데이터 파일을 저장하기에 적합한 저장 유닛을 포함하고,A storage unit suitable for storing said data file in response to a command from a server connected to a data communication network, 상기 모뎀은 상기 데이터 통신망을 통해서 상기 데이터 파일의 적어도 일부를 상기 서버에 의해 지정된 제 2 엔드 유저 유닛에 전송하기에 적합한 것을 특징으로 하는 주문형 데이터 시스템의 엔드 유저 유닛.The modem is suitable for transmitting at least a portion of the data file to the second end user unit designated by the server via the data communication network. 통신망을 통해서 중앙 저장 장치로부터 복수의 엔드 유저 유닛("EUU")으로 적어도 하나의 데이터 파일을 전송하는 방법에 있어서, 상기 방법은:A method of transferring at least one data file from a central storage device to a plurality of end user units (“EUUs”) over a communication network, the method comprising: a) 상기 중앙 저장 장치에 적어도 하나의 데이터 파일을 저장하는 단계;a) storing at least one data file on the central storage device; b) 상기 데이터 파일의 적어도 일부를 제 1 EUU에 전송함으로써 제 1 EUU를 초기화하는 단계;b) initializing a first EUU by sending at least a portion of the data file to a first EUU; c) 상기 제 1 EUU에 상기 데이터 파일의 상기 부분을 저장하는 단계;c) storing said portion of said data file in said first EUU; d) 데이터 파일의 상기 부분의 위치에 관한 정보의 경로를 추적하는 단계;d) tracking the path of information regarding the location of said portion of the data file; e) 상기 제 2 EUU가 상기 데이터 파일에 대한 주문을 발행했을 때, 데이터 파일의 상기 부분의 위치를 판정하는 단계;e) when the second EUU has issued an order for the data file, determining the location of the portion of the data file; f) 상기 제 1 EUU에 저장된 데이터 파일의 상기 부분에 대해 상기 제 1 EUU에 명령어을 발행하는 단계;f) issuing an instruction to the first EUU for the portion of the data file stored in the first EUU; g) 상기 명령어의 수신시에, 상기 제 1 EUU는 데이터 파일의 상기 부분을 상기 제 2 EUU에 전송하는 단계를 포함하는 것을 특징으로 하는 방법.g) upon receipt of said command, said first EUU comprising transmitting said portion of a data file to said second EUU. 제 12 항에 있어서,The method of claim 12, a) 데이터 파일의 적어도 상기 부분을 저장하기 위해 제 3 EUU에 전송함으로써 제 3 EUU를 개시하는 단계;a) initiating a third EUU by sending at least the portion of the data file to a third EUU for storage; b) 상기 제 3의 EUU의 상기 데이터 파일의 위치에 관한 정보를 추적하는 단계;b) tracking information regarding the location of the data file of the third EUU; c) 상기 제 1 EUU로부터 상기 제 2 EUU로의 전송을 모니터하는 단계;c) monitoring the transmission from the first EUU to the second EUU; d) 상기 제 1 EUU로부터 상기 제 2 EUU로의 데이터 전송이 소정의 기준 이하로 떨어지면, 상기 제 2 EUU로의 데이터 파일의 상기 부분의 전송을 위해 상기 제 3 EUU에 명령어를 발행하고, 상기 제 1 EUU에 그 전송을 종료하도록 명령어를 발행하는 단계;d) if the data transfer from the first EUU to the second EUU falls below a predetermined criterion, issue a command to the third EUU for transfer of the portion of the data file to the second EUU, and the first EUU Issuing an instruction to end the transmission at the; e) 상기 명령어의 수신시에, 상기 제 3 EUU는 상기 제 2 EUU에 데이터 파일의 상기 부분을 전송하는 단계;를 포함하는 것을 특징으로 하는 방법.e) upon receipt of the command, the third EUU sending the portion of the data file to the second EUU. 통신망을 통해서 복수의 엔드 유저 유닛("EUU")중 적어도 하나에 적어도 하나의 주문형 데이터 파일을 전송하는 방법에 있어서, 상기 방법은:A method of transferring at least one on-demand data file to at least one of a plurality of end user units (“EUUs”) over a communication network, the method comprising: a) 상기 통신망을 통해서 액세스 가능한 복수의 데이터 파일을 제공하는 단계;a) providing a plurality of data files accessible via said communication network; b) 저장하기 위해 복수의 EUU에 상기 복수의 데이터 파일을 분배하는 단계;b) distributing the plurality of data files to a plurality of EUUs for storage; c) 상기 복수의 EUU의 상기 복수의 데이터 파일의 각각의 저장 위치에 관한 정보를 추적하는 단계;c) tracking information relating to each storage location of the plurality of data files of the plurality of EUUs; d) 요청 EUU가 상기 복수의 데이터 파일중 적어도 하나에 대해 주문을 발행할 때, 적어도 하나의 소정의 기준에 기초해서 상기 복수의 EUU로부터 상기 복수의 데이터 파일중 적어도 하나를 저장하는적어도 하나의 EUU의 위치를 지정하는 단계;d) at least one EUU for storing at least one of the plurality of data files from the plurality of EUUs based on at least one predetermined criterion when the requesting EUU issues an order for at least one of the plurality of data files Specifying a location of; e) 식별된 EUU가 상기 적어도 하나의 데이터 파일을 상기 요청 EUU에 전송하도록 하는 단계를 포함하는 것을 특징으로 하는 방법.e) causing the identified EUU to send the at least one data file to the requesting EUU. 제 14 항에 있어서, 식별을 하는 상기 단계 d)의 상기 소정의 기준은15. The method of claim 14, wherein the predetermined criteria of step d) for identification is 상기 복수의 EUU중 각각과 상기 제 2 EUU와의 사이의 전송의 품질;Quality of transmission between each of the plurality of EUUs and the second EUU; 상기 제 2 EUU와 관련된 상기 제 1 복수의 EUU의 각각의 근접성;Proximity of each of the first plurality of EUUs relative to the second EUU; 상기 제 2 복수의 EUU와 관련된 상기 복수의 EUU 각각의 필요성;중 적어도 하나를 포함하는 것을 특징으로 하는 방법.And a need for each of the plurality of EUUs associated with the second plurality of EUUs. 제 14 항에 있어서, 상기 복수의 데이터 파일은 멀티미디어 프로그램 및 데이터를 포함하는 것을 특징으로 하는 방법.15. The method of claim 14, wherein the plurality of data files includes multimedia programs and data. 통신망을 통해서 원격 저장 장치로부터 복수의 엔드 유저 유닛("EUU")으로 주문형 멀티미디어 프로그램을 전송하는 방법에 있어서, 상기 방법은:10. A method for transferring an on-demand multimedia program from a remote storage device to a plurality of end user units (“EUUs”) over a communication network, the method comprising: a) 상기 원격 저장 장치에 적어도 하나의 멀티미디어 프로그램을 저장하는 단계;a) storing at least one multimedia program on the remote storage device; b) 제 1 EUU에 상기 멀티미디어 프로그램의 적어도 제 1 부분을 전송함으로써 제 1 EUU를 초기화하는 단계;b) initializing the first EUU by sending at least a first portion of the multimedia program to a first EUU; c) 상기 제 1 EUU에 상기 멀티미디어 프로그램의 상기 제 1 부분을 저장하는 단계;c) storing said first portion of said multimedia program in said first EUU; d) 제 2 EUU에 상기 멀티미디어 프로그램의 적어도 제 2 부분을 전송함으로써 제 2 EUU를 초기화하는 단계;d) initializing a second EUU by sending at least a second portion of the multimedia program to a second EUU; e) 상기 제 2 EUU에 상기 멀티미디어 프로그램의 상기 제 2 부분을 저장하는 단계;e) storing said second portion of said multimedia program in said second EUU; f) 상기 제 1 EUU 및 제 2 EUU의 상기 멀티미디어 프로그램의 제 1 및 제 2 부분의 저장위치에 관한 정보를 추적하는 단계;f) tracking information regarding the storage location of the first and second portions of the multimedia program of the first EUU and the second EUU; g) 제 3 EUU가 상기 멀티미디어 프로그램에 대한 요구를 발행했을 때, 상기 멀티미디어 프로그램의 상기 제 1 및 제 2 부분이 상기 제 3 EUU로 전송되게 하는 단계;g) when a third EUU issues a request for the multimedia program, causing the first and second portions of the multimedia program to be sent to the third EUU; h) 상기 멀티미디어 프로그램의 제 1 및 제 2 부분을 수신시에, 상기 제 3 EUU는 상기 멀티미디어 프로그램을 다운로드하기 위해 조립하는 단계;를 포함하는 것을 특징으로 하는 방법.h) upon receiving the first and second portions of the multimedia program, the third EUU assembling to download the multimedia program. 제 17 항에 있어서, 상기 멀티미디어 프로그램은 비디오 프로그램, 오디오 프로그램 또는 영화 프로그램중 적어도 하나를 포함하는 것을 특징으로 하는 방법.18. The method of claim 17, wherein the multimedia program comprises at least one of a video program, an audio program or a movie program. 제 17 항에 있어서, 상기 멀티미디어 프로그램의 각각의 부분은 소정의 암호화 키로 암호화되는 것을 특징으로 하는 방법.18. The method of claim 17, wherein each portion of the multimedia program is encrypted with a predetermined encryption key. 복수의 클라이언트 및 서버와의 데이터 통신망으로 제 1 클라이언트에 복수의 주문형 데이터 파일중 적어도 하나의 데이터 파일을 전송하는 방법에 있어서, 상기 방법은:A method of transferring at least one data file of a plurality of on-demand data files to a first client over a data communication network with a plurality of clients and servers, the method comprising: a) 소정의 분배 계획에 기초해서 저장하기 위해 상기 복수의 서버 및 클라이언트중 적어도 하나에 상기 복수의 데이터 파일을 분배하는 단계;a) distributing the plurality of data files to at least one of the plurality of servers and clients for storage based on a predetermined distribution plan; b) 상기 데이터 파일 각각을 그 위치에 대해 추적하는 단계;b) tracking each of the data files for its location; c) 상기 제 1 클라이언트로부터 상기 복수의 데이터 파일 중 하나에 대한 요청을 수신하는 단계;c) receiving a request for one of the plurality of data files from the first client; d) 상기 요청된 데이터 파일을 저장한 상기 클라이언트 및 상기 서버중 적어도 하나의 위치를 지정하는 단계;d) designating a location of at least one of the client and the server storing the requested data file; e) 상기 요청된 데이터 파일을 상기 제 1 클라이언트에 전송하도록 상기 클라이언트 및 상기 서버중 적어도 하나에 명령하는 단계;를 포함하는 것을 특징으로 하는 방법.e) instructing at least one of the client and the server to send the requested data file to the first client. 제 20 항에 있어서, 상기 소정의 분배 계획은 서버와 클라이언트의 위치 및 데이터 파일의 인기도 중 적어도 하나에 기초한 것을 특징으로 하는 방법.21. The method of claim 20, wherein the predetermined distribution plan is based on at least one of the location of the server and client and the popularity of the data file. 통신망을 사용해서 VOD서비스를 수행하는 방법에 있어서, 상기 방법은:A method of performing a VOD service using a communication network, the method comprising: a) 상기 통신망내의 적어도 하나의 서버를 통해서 액세스 가능한 복수의 영화를 제공하는 단계;a) providing a plurality of movies accessible through at least one server in the communication network; b) 복수의 셋 톱 박스("STB")를 복수의 클라이언트에 분배하는 단계;b) distributing a plurality of set top boxes ("STBs") to a plurality of clients; c) 복수의 영화를 상기 STB 및 상기 적어도 하나의 서버를 통해서 단편으로 또는 전체적으로 저장하고, 상기 영화의 단편의 위치 추적을 계속하는 단계;c) storing a plurality of movies as a fragment or wholly through the STB and the at least one server, and continuing tracking the location of the fragment of the movie; d) 상기 복수의 영화로부터 하나의 영화에 대해 클라이언트 중 하나로부터 요청을 수신시에, 상기 영화의 위치를 단편 또는 전체적으로 지정하는 단계;d) upon receiving a request from one of the clients for a movie from the plurality of movies, specifying the location of the movie shortly or entirely; e) 상기 STB와 상기 적어도 하나의 서버의 사이에 상기 영화를 단편으로 또는 전체적으로 위치지정시에, 상기 영화를 단편으로 또는 전체적으로 요청 클라이언트에 전송되게 하는 단계;를 포함하는 것을 특징으로 하는 방법.e) causing the movie to be sent to the requesting client as a fragment or wholly, upon positioning the movie as a fragment or wholly between the STB and the at least one server.
KR1020027001493A 1999-08-02 2000-08-02 Vod from a server or a user to another user KR20020035571A (en)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US14689399P 1999-08-02 1999-08-02
US60/146,893 1999-08-02
US47580799A 1999-12-30 1999-12-30
US09/475,807 1999-12-30
PCT/US2000/021127 WO2001010125A1 (en) 1999-08-02 2000-08-02 Vod from a server or a user to another user

Publications (1)

Publication Number Publication Date
KR20020035571A true KR20020035571A (en) 2002-05-11

Family

ID=26844392

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020027001493A KR20020035571A (en) 1999-08-02 2000-08-02 Vod from a server or a user to another user

Country Status (6)

Country Link
EP (1) EP1205073A1 (en)
JP (1) JP2003506765A (en)
KR (1) KR20020035571A (en)
CN (1) CN1377556A (en)
AU (1) AU6619300A (en)
WO (1) WO2001010125A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100481691B1 (en) * 2002-08-14 2005-04-11 무하디지털(주) Apparatus and Method of VOD including Client
US7818368B2 (en) 2005-09-30 2010-10-19 Samsung Electronics Co., Ltd. System and method for downloading content
KR101299038B1 (en) * 2006-01-09 2013-08-27 톰슨 라이센싱 Multimedia content delivery method and system

Families Citing this family (108)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0109409D0 (en) * 2001-04-17 2001-06-06 Quadriga Worldwide Ltd Distribution and networking of television signals installation of such distribution sytem and control of television sets
NL1017388C2 (en) * 2001-02-16 2002-08-19 Marc Van Oldenborgh Organic data network with a dynamic topology.
DE10128925A1 (en) 2001-06-15 2002-12-19 Deutsche Telekom Ag Terminal and method for using various services offered over a telecommunications network
ATE361632T1 (en) * 2001-08-10 2007-05-15 Broadbus Technologies Inc METHOD AND APPARATUS FOR PRERECORDED AND DIRECT PLAYBACK OF WORKS STORED ON A SERVER
US8713623B2 (en) 2001-09-20 2014-04-29 Time Warner Cable Enterprises, LLC Technique for effectively providing program material in a cable television system
US20030069964A1 (en) * 2001-10-04 2003-04-10 Shteyn Yevgeniy Eugene Digital content catering system
CN1217543C (en) 2002-06-28 2005-08-31 国际商业机器公司 Apparatus and method for equivalent VOD system
US8234395B2 (en) 2003-07-28 2012-07-31 Sonos, Inc. System and method for synchronizing operations among a plurality of independently clocked digital data processing devices
US11650784B2 (en) 2003-07-28 2023-05-16 Sonos, Inc. Adjusting volume levels
US8086752B2 (en) 2006-11-22 2011-12-27 Sonos, Inc. Systems and methods for synchronizing operations among a plurality of independently clocked digital data processing devices that independently source digital data
US8290603B1 (en) 2004-06-05 2012-10-16 Sonos, Inc. User interfaces for controlling and manipulating groupings in a multi-zone media system
US11106424B2 (en) 2003-07-28 2021-08-31 Sonos, Inc. Synchronizing operations among a plurality of independently clocked digital data processing devices
US11294618B2 (en) 2003-07-28 2022-04-05 Sonos, Inc. Media player system
US11106425B2 (en) 2003-07-28 2021-08-31 Sonos, Inc. Synchronizing operations among a plurality of independently clocked digital data processing devices
US10613817B2 (en) 2003-07-28 2020-04-07 Sonos, Inc. Method and apparatus for displaying a list of tracks scheduled for playback by a synchrony group
US9374607B2 (en) 2012-06-26 2016-06-21 Sonos, Inc. Media playback system with guest access
US9977561B2 (en) 2004-04-01 2018-05-22 Sonos, Inc. Systems, methods, apparatus, and articles of manufacture to provide guest access
US8326951B1 (en) 2004-06-05 2012-12-04 Sonos, Inc. Establishing a secure wireless network with minimum human intervention
US8868698B2 (en) 2004-06-05 2014-10-21 Sonos, Inc. Establishing a secure wireless network with minimum human intervention
US8266429B2 (en) 2004-07-20 2012-09-11 Time Warner Cable, Inc. Technique for securely communicating and storing programming material in a trusted domain
US8312267B2 (en) 2004-07-20 2012-11-13 Time Warner Cable Inc. Technique for securely communicating programming content
JP2006126894A (en) * 2004-10-26 2006-05-18 Sony Corp Content delivery method, program and information processor
CN100442843C (en) * 2004-11-18 2008-12-10 华为技术有限公司 System and method for realizing multi-media service in wide-band video system
US9723267B2 (en) 2004-12-15 2017-08-01 Time Warner Cable Enterprises Llc Method and apparatus for wideband distribution of content
US8522293B2 (en) 2004-12-15 2013-08-27 Time Warner Cable Enterprises Llc Method and apparatus for high bandwidth data transmission in content-based networks
US7567565B2 (en) 2005-02-01 2009-07-28 Time Warner Cable Inc. Method and apparatus for network bandwidth conservation
US7602820B2 (en) 2005-02-01 2009-10-13 Time Warner Cable Inc. Apparatus and methods for multi-stage multiplexing in a network
CN100396097C (en) * 2005-02-23 2008-06-18 南京Lg新港显示有限公司 Multimedia servicer system using network and its servicing method
US8028322B2 (en) 2005-03-14 2011-09-27 Time Warner Cable Inc. Method and apparatus for network content download and recording
US8266237B2 (en) 2005-04-20 2012-09-11 Microsoft Corporation Systems and methods for providing distributed, decentralized data storage and retrieval
US7986686B2 (en) * 2005-11-25 2011-07-26 Cisco Technology, Inc. Techniques for distributing network provider digital content to customer premises nodes
US8458753B2 (en) 2006-02-27 2013-06-04 Time Warner Cable Enterprises Llc Methods and apparatus for device capabilities discovery and utilization within a content-based network
US8718100B2 (en) 2006-02-27 2014-05-06 Time Warner Cable Enterprises Llc Methods and apparatus for selecting digital interface technology for programming and data delivery
US8170065B2 (en) 2006-02-27 2012-05-01 Time Warner Cable Inc. Methods and apparatus for selecting digital access technology for programming and data delivery
US9386327B2 (en) 2006-05-24 2016-07-05 Time Warner Cable Enterprises Llc Secondary content insertion apparatus and methods
US8280982B2 (en) 2006-05-24 2012-10-02 Time Warner Cable Inc. Personal content server apparatus and methods
US8024762B2 (en) 2006-06-13 2011-09-20 Time Warner Cable Inc. Methods and apparatus for providing virtual content over a network
US8483853B1 (en) 2006-09-12 2013-07-09 Sonos, Inc. Controlling and manipulating groupings in a multi-zone media system
US9202509B2 (en) 2006-09-12 2015-12-01 Sonos, Inc. Controlling and grouping in a multi-zone media system
US8788080B1 (en) 2006-09-12 2014-07-22 Sonos, Inc. Multi-channel pairing in a media system
US8520850B2 (en) 2006-10-20 2013-08-27 Time Warner Cable Enterprises Llc Downloadable security and protection methods and apparatus
US8732854B2 (en) 2006-11-01 2014-05-20 Time Warner Cable Enterprises Llc Methods and apparatus for premises content distribution
US8621540B2 (en) 2007-01-24 2013-12-31 Time Warner Cable Enterprises Llc Apparatus and methods for provisioning in a download-enabled system
US8181206B2 (en) 2007-02-28 2012-05-15 Time Warner Cable Inc. Personal content server apparatus and methods
US20080235746A1 (en) 2007-03-20 2008-09-25 Michael James Peters Methods and apparatus for content delivery and replacement in a network
WO2009005419A1 (en) * 2007-06-29 2009-01-08 Telefonaktiebolaget L M Ericsson (Publ) A network unit, a central distribution control unit and a computer program product
US8625607B2 (en) 2007-07-24 2014-01-07 Time Warner Cable Enterprises Llc Generation, distribution and use of content metadata in a network
US9154552B2 (en) 2007-09-06 2015-10-06 Microsoft Technology Licensing, Llc Method and apparatus for cooperative file distribution with receiver determined quality of services
US8561116B2 (en) 2007-09-26 2013-10-15 Charles A. Hasek Methods and apparatus for content caching in a video network
US9071859B2 (en) 2007-09-26 2015-06-30 Time Warner Cable Enterprises Llc Methods and apparatus for user-based targeted content delivery
US8099757B2 (en) 2007-10-15 2012-01-17 Time Warner Cable Inc. Methods and apparatus for revenue-optimized delivery of content in a network
US8300541B2 (en) 2008-02-19 2012-10-30 Time Warner Cable Inc. Apparatus and methods for utilizing statistical multiplexing to ensure quality of service in a network
US9503691B2 (en) 2008-02-19 2016-11-22 Time Warner Cable Enterprises Llc Methods and apparatus for enhanced advertising and promotional delivery in a network
US8813143B2 (en) 2008-02-26 2014-08-19 Time Warner Enterprises LLC Methods and apparatus for business-based network resource allocation
CN101547191B (en) * 2008-03-28 2012-02-01 华为技术有限公司 Method and device for controlling media content syndication
US9357247B2 (en) 2008-11-24 2016-05-31 Time Warner Cable Enterprises Llc Apparatus and methods for content delivery and message exchange across multiple content delivery networks
US11076189B2 (en) 2009-03-30 2021-07-27 Time Warner Cable Enterprises Llc Personal media channel apparatus and methods
US9215423B2 (en) 2009-03-30 2015-12-15 Time Warner Cable Enterprises Llc Recommendation engine apparatus and methods
US9866609B2 (en) 2009-06-08 2018-01-09 Time Warner Cable Enterprises Llc Methods and apparatus for premises content distribution
US9602864B2 (en) 2009-06-08 2017-03-21 Time Warner Cable Enterprises Llc Media bridge apparatus and methods
US9094713B2 (en) 2009-07-02 2015-07-28 Time Warner Cable Enterprises Llc Method and apparatus for network association of content
US8813124B2 (en) 2009-07-15 2014-08-19 Time Warner Cable Enterprises Llc Methods and apparatus for targeted secondary content insertion
US8396055B2 (en) 2009-10-20 2013-03-12 Time Warner Cable Inc. Methods and apparatus for enabling media functionality in a content-based network
CN101697548A (en) * 2009-10-23 2010-04-21 中兴通讯股份有限公司 Implementation method and management system of node cooperation
US10264029B2 (en) 2009-10-30 2019-04-16 Time Warner Cable Enterprises Llc Methods and apparatus for packetized content delivery over a content delivery network
US9519728B2 (en) 2009-12-04 2016-12-13 Time Warner Cable Enterprises Llc Apparatus and methods for monitoring and optimizing delivery of content in a network
US9342661B2 (en) 2010-03-02 2016-05-17 Time Warner Cable Enterprises Llc Apparatus and methods for rights-managed content and data delivery
US20110264530A1 (en) 2010-04-23 2011-10-27 Bryan Santangelo Apparatus and methods for dynamic secondary content and data insertion and delivery
US9300445B2 (en) 2010-05-27 2016-03-29 Time Warner Cable Enterprise LLC Digital domain content processing and distribution apparatus and methods
US9906838B2 (en) 2010-07-12 2018-02-27 Time Warner Cable Enterprises Llc Apparatus and methods for content delivery and message exchange across multiple content delivery networks
US8997136B2 (en) 2010-07-22 2015-03-31 Time Warner Cable Enterprises Llc Apparatus and methods for packetized content delivery over a bandwidth-efficient network
US9185341B2 (en) 2010-09-03 2015-11-10 Time Warner Cable Enterprises Llc Digital domain content processing and distribution apparatus and methods
US11429343B2 (en) 2011-01-25 2022-08-30 Sonos, Inc. Stereo playback configuration and control
US11265652B2 (en) 2011-01-25 2022-03-01 Sonos, Inc. Playback device pairing
US9602414B2 (en) 2011-02-09 2017-03-21 Time Warner Cable Enterprises Llc Apparatus and methods for controlled bandwidth reclamation
US9467723B2 (en) 2012-04-04 2016-10-11 Time Warner Cable Enterprises Llc Apparatus and methods for automated highlight reel creation in a content delivery network
US9729115B2 (en) 2012-04-27 2017-08-08 Sonos, Inc. Intelligently increasing the sound level of player
US9854280B2 (en) 2012-07-10 2017-12-26 Time Warner Cable Enterprises Llc Apparatus and methods for selective enforcement of secondary content viewing
US20140082645A1 (en) 2012-09-14 2014-03-20 Peter Stern Apparatus and methods for providing enhanced or interactive features
US9008330B2 (en) 2012-09-28 2015-04-14 Sonos, Inc. Crossover frequency adjustments for audio speakers
US9565472B2 (en) 2012-12-10 2017-02-07 Time Warner Cable Enterprises Llc Apparatus and methods for content transfer protection
US9131283B2 (en) 2012-12-14 2015-09-08 Time Warner Cable Enterprises Llc Apparatus and methods for multimedia coordination
US20140282786A1 (en) 2013-03-12 2014-09-18 Time Warner Cable Enterprises Llc Methods and apparatus for providing and uploading content to personalized network storage
US9066153B2 (en) 2013-03-15 2015-06-23 Time Warner Cable Enterprises Llc Apparatus and methods for multicast delivery of content in a content delivery network
US10368255B2 (en) 2017-07-25 2019-07-30 Time Warner Cable Enterprises Llc Methods and apparatus for client-based dynamic control of connections to co-existing radio access networks
US9313568B2 (en) 2013-07-23 2016-04-12 Chicago Custom Acoustics, Inc. Custom earphone with dome in the canal
US9226087B2 (en) 2014-02-06 2015-12-29 Sonos, Inc. Audio output balancing during synchronized playback
US9226073B2 (en) 2014-02-06 2015-12-29 Sonos, Inc. Audio output balancing during synchronized playback
US9621940B2 (en) 2014-05-29 2017-04-11 Time Warner Cable Enterprises Llc Apparatus and methods for recording, accessing, and delivering packetized content
US11540148B2 (en) 2014-06-11 2022-12-27 Time Warner Cable Enterprises Llc Methods and apparatus for access point location
US9935833B2 (en) 2014-11-05 2018-04-03 Time Warner Cable Enterprises Llc Methods and apparatus for determining an optimized wireless interface installation configuration
US10116676B2 (en) 2015-02-13 2018-10-30 Time Warner Cable Enterprises Llc Apparatus and methods for data collection, analysis and service modification based on online activity
US10248376B2 (en) 2015-06-11 2019-04-02 Sonos, Inc. Multiple groupings in a playback system
US9986578B2 (en) 2015-12-04 2018-05-29 Time Warner Cable Enterprises Llc Apparatus and methods for selective data network access
US10091264B2 (en) * 2015-12-26 2018-10-02 Intel Corporation Technologies for streaming device role reversal
US10303422B1 (en) 2016-01-05 2019-05-28 Sonos, Inc. Multiple-device setup
US9918345B2 (en) 2016-01-20 2018-03-13 Time Warner Cable Enterprises Llc Apparatus and method for wireless network services in moving vehicles
US10404758B2 (en) 2016-02-26 2019-09-03 Time Warner Cable Enterprises Llc Apparatus and methods for centralized message exchange in a user premises device
US10492034B2 (en) 2016-03-07 2019-11-26 Time Warner Cable Enterprises Llc Apparatus and methods for dynamic open-access networks
US10687115B2 (en) 2016-06-01 2020-06-16 Time Warner Cable Enterprises Llc Cloud-based digital content recorder apparatus and methods
US10164858B2 (en) 2016-06-15 2018-12-25 Time Warner Cable Enterprises Llc Apparatus and methods for monitoring and diagnosing a wireless network
US11212593B2 (en) 2016-09-27 2021-12-28 Time Warner Cable Enterprises Llc Apparatus and methods for automated secondary content management in a digital network
US10712997B2 (en) 2016-10-17 2020-07-14 Sonos, Inc. Room association based on name
US10911794B2 (en) 2016-11-09 2021-02-02 Charter Communications Operating, Llc Apparatus and methods for selective secondary content insertion in a digital network
US10645547B2 (en) 2017-06-02 2020-05-05 Charter Communications Operating, Llc Apparatus and methods for providing wireless service in a venue
US10638361B2 (en) 2017-06-06 2020-04-28 Charter Communications Operating, Llc Methods and apparatus for dynamic control of connections to co-existing radio access networks
US11109290B2 (en) 2017-08-04 2021-08-31 Charter Communications Operating, Llc Switching connections over frequency bands of a wireless network
US10939142B2 (en) 2018-02-27 2021-03-02 Charter Communications Operating, Llc Apparatus and methods for content storage, distribution and security within a content distribution network

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4401981A1 (en) * 1994-01-25 1995-07-27 Stocko Metallwarenfab Henkels Sorting magazine
JPH0879685A (en) * 1994-08-31 1996-03-22 Sony Corp Program reproducing device for near-video-on-demand system
ES2146006T3 (en) * 1995-07-21 2000-07-16 Koninkl Philips Electronics Nv METHOD FOR RECEIVING COMPRESSED VIDEO SIGNALS.

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100481691B1 (en) * 2002-08-14 2005-04-11 무하디지털(주) Apparatus and Method of VOD including Client
US7818368B2 (en) 2005-09-30 2010-10-19 Samsung Electronics Co., Ltd. System and method for downloading content
KR101299038B1 (en) * 2006-01-09 2013-08-27 톰슨 라이센싱 Multimedia content delivery method and system

Also Published As

Publication number Publication date
AU6619300A (en) 2001-02-19
WO2001010125A1 (en) 2001-02-08
JP2003506765A (en) 2003-02-18
CN1377556A (en) 2002-10-30
EP1205073A1 (en) 2002-05-15

Similar Documents

Publication Publication Date Title
KR20020035571A (en) Vod from a server or a user to another user
US10848816B2 (en) Updating content libraries by transmitting release data
US9705951B2 (en) Method and apparatus for instant playback of a movie
US7810647B2 (en) Method and apparatus for assembling portions of a data file received from multiple devices
US7937379B2 (en) Fragmentation of a file for instant access
US7627888B2 (en) Method and system for keeping a library of titles updated
US8219635B2 (en) Continuous data feeding in a distributed environment
US8739231B2 (en) System and method for distributed video-on-demand
US7797440B2 (en) Method and system for managing objects distributed in a network
KR100584323B1 (en) Method for streaming multimedia content
US20060218220A1 (en) Method and system for updating contents in newly-installed devices
JP2005518726A (en) Distributed storage network architecture using user equipment
US8099511B1 (en) Instantaneous media-on-demand
KR100525175B1 (en) Vod service method making use of dual multicast transmission channel

Legal Events

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