KR20050114659A - 미디어 기반 파일 송신 시스템 및 방법 - Google Patents

미디어 기반 파일 송신 시스템 및 방법 Download PDF

Info

Publication number
KR20050114659A
KR20050114659A KR1020057017322A KR20057017322A KR20050114659A KR 20050114659 A KR20050114659 A KR 20050114659A KR 1020057017322 A KR1020057017322 A KR 1020057017322A KR 20057017322 A KR20057017322 A KR 20057017322A KR 20050114659 A KR20050114659 A KR 20050114659A
Authority
KR
South Korea
Prior art keywords
segment
master controller
media object
file
client
Prior art date
Application number
KR1020057017322A
Other languages
English (en)
Other versions
KR101006703B1 (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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=33131809&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=KR20050114659(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by 톰슨 라이센싱 filed Critical 톰슨 라이센싱
Publication of KR20050114659A publication Critical patent/KR20050114659A/ko
Application granted granted Critical
Publication of KR101006703B1 publication Critical patent/KR101006703B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/12Systems in which the television signal is transmitted via one channel or a plurality of parallel channels, the bandwidth of each channel being less than the bandwidth of the television signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/613Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for the control of the source by the destination
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/752Media network packet handling adapting media to network capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/762Media network packet handling at the source 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/14Multichannel or multilink protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/164Adaptation or special uses of UDP protocol
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/166IP fragmentation; TCP segmentation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/26Special purpose or proprietary protocols or architectures
    • 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/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44209Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
    • 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/637Control signals issued by the client directed to the server or network components
    • H04N21/6375Control signals issued by the client directed to the server or network components for requesting retransmission, e.g. of data packets lost or corrupted during transmission from server
    • 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/637Control signals issued by the client directed to the server or network components
    • H04N21/6377Control signals issued by the client directed to the server or network components directed to server
    • 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/643Communication protocols
    • H04N21/64322IP
    • 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/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • 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/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6582Data stored in the client, e.g. viewing habits, hardware capabilities, credit card number
    • 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

Abstract

네트워크(170)를 거쳐서 요청된 미디어 파일을 송신하기 위한 방법 및 장치가 개시되어 있다. 서버(115)의 마스터 제어기(120)는 미디어 객체를 분할한다. 그러면, 서버의 마스터 제어기(120)는, 미디어 객체를 요청했던 클라이언트(140)에 네트워크(170)를 통해 송신하기 위해, 상기 분할된 미디어 객체의 세그먼트를 파일 분할 관리자(130)에 할당한다. 파일 분할 관리자(130)는 유저 데이터그램 프로토콜(UDP) 포트를 통해서 네트워크를 거쳐서 세그먼트를 클라이언트에 송신한다. 그러면, 마스터 제어기(120)는, 원래의 세그먼트가 클라이언트(140)에 성공적으로 송신될 때, 상기 분할된 미디어 객체의 제 2 세그먼트를 파일 분할 관리자(130)에 할당한다. 미디어 객체의 세그먼트화는 파일 분할 관리자(130, 160)의 이용 가능성 및 클라이언트(140)에 의해 지정된 조건에 응답하여 결정된다.

Description

미디어 기반 파일 송신 시스템 및 방법{SYSTEM AND METHOD FOR TRANSMITTING MEDIA BASED FILES}
본 발명은 디지털 오디오 및 비디오 파일, 구체적으로는 네트워크를 통해 통신된 미디어 객체를 송신하는 분야에 관한 것이다.
위성 및 케이블 산업이 성장함에 따라, 풀-렝쓰(full-length) 영화를 홈 멀티미디어 유저에게 전달하기 위한 아키택쳐를 개발하는데 많은 관심이 있어왔다. 주문형 비디오(VOD: Video On Demand)로 불리는 하나의 전달 개념은 유저가 한 선택에 기초로 하여 유저에게 영화를 제공한다. 유저는 방송 서비스를 거쳐서 수신될 수 있는 이용 가능한 미디어를 나열하고 있는 전자 프로그래밍 가이드(EPG: Electronic Programming Guide)를 통해 프로그래밍을 선택할 수 있다. 일단 영화가 선택되면, 방송 시스템은 영화를 홈 유저에게 송신할 것이며, 이러한 송신은 (MPEG-2 디지털 케이블 송신과 같은) 케이블 수단과, (DBS, DIRECTVTM, DISH NETWORKTM 등과 같은) 위성 방송과, 지상 방송(UHF, VHF, 또는 표준 선명도/고선명도 프로그래밍 등을 수신하기 위한 방송 채널), 또는 (DSL 등과 같은) 연선 연결(twisted pair connection) 중 어느 하나를 거쳐서 발생한다.
이후 미디어 객체로 지칭되는 디지털 비디오(오디오)파일 송신은 복잡하므로, 송신 아키택쳐가 큰 규모의 디지털 비디오 파일을 처리할 수 있어야 한다. 예컨대, 미디어 객체가 디스플레이 포맷으로서 "거의 동화상 품질"(예컨대, 고선명 텔레비전)로 디스플레이되기 위한 요건으로, 송신 아키택쳐가 거의 20Mbits/sec의 처리량을 지원하는 네트워크를 필요로 한다. 송신 아키택쳐는 또한 비디오/오디오 송신의 요건을 악화시키지 않기 위해 낮은 송신 에러율을 가져야 한다. 예컨대, DBS 위성 시스템은 허용 가능한 서비스 품질(QOS: Quality Of Service)을 제공하기 위해 10-9 내지 10-11 범위의 에러율을 가져야 한다.
에러가 미디어 객체의 송신을 악화시킬 가능성은, 미디어 객체를 분리된 세그먼트로 분할하는 경우에 감소된다. 데이터 패킷으로 알려져 있는 이러한 세그먼트는 미디어 객체를 송신 아키택쳐의 수신 말단에서 재구성된 개별 구획(individual division)으로 분리한다. 데이터 파일을 패킷화하기 위해 사용된 하나의 기술은 분리된 데이터 패킷을 인코딩 및 전송하기 위한 데이터 스트림(MPEG-2 규격 ISO-13818-1 참조바람)을 생성하기 위해 MPEG-2 데이터-인코딩 표준으로 컴파일한다.
그러나, 미디어 객체를 송신하기 위한 이러한 기술은 대역폭을 효율적으로 사용하지 않는다. 파일 전송 프로토콜(FTP: File Transport Protocol)과 같은 미디어 객체를 전송하기 위한 다른 알려진 기술은 기초가 되는 연결의 이용 가능한 링크 속도와 상관없이 초당 단지 300Kbytes가 송신된다는 물리적인 제약으로 제한된다. 추가적으로, 일부 미디어 객체 전송 기술은 어떤 연결의 이용 가능한 대역폭을 사용할 수 있다. 그러나, 이러한 기술은 미디어 객체의 송신 시에 중복된 패킷을 사용하며, 이것은 원래 미디어 객체 크기의 두 배인 인코딩 오버헤드(overhead)를 필요로 한다. 그러므로, 이러한 미디어 객체 송신은 에러 정정에 대한 이용 가능한 대역폭의 절반을 비효율적으로 사용한다.
도 1은 본 발명의 예시적인 실시예에 따른 시스템 도.
도 2는 본 발명의 예시적인 실시예에 따라 분할된 미디어 객체의 단일 클라이언트로의 송신을 설명하는 시스템 도.
도 3은 본 발명의 예시적인 실시예에 따라 세그먼트화된 미디어 객체의 멀티캐스팅 동작을 통한 송신을 설명하는 시스템 도.
도 4는 본 발명의 예시적인 실시예에 따라 미디어 객체를 다수의 부분으로 세그먼트화하는 송신 방법의 흐름도.
도 5는 분할된 미디어 객체의 파일 세그먼트의 예시적인 실시예를 도시한 도면.
도 6은 본 발명의 예시적인 실시예에 따라 분할된 미디어 객체의 멀티캐스트 송신 동안에 패킷 손실을 나타내는 2차원 어레이를 도시한 도면.
본 발명은, 이러한 네트워크의 물리적인 성능을 기초로 해서 네트워크를 거쳐서 미디어 객체를 할당하고 송신하기 위한 시스템 및 방법에 관한 것이다. 미디어 객체는, 클라이언트 측에서의 액세스 포인트 및 자원의 이용 가능성과, 이러한 액세스 포인트와 이러한 미디어 객체를 송신하는 서버 사이의 네트워크 연결을 기초로 해서, 세그먼트화되고 클라이언트에 송신되는 다수의 부분(partitions)으로 파싱된다.
본 발명의 상기 및 다른 장점과 특성은 수반하는 도면과 연계하여 제공되는 본 발명의 바람직한 실시예에 대한 다음의 상세한 설명으로부터 더 잘 이해될 것이다. 도면의 여러 특성은 실제축적대로 되지 않을 수 있다. 다음의 도면이 포함되어 있다.
비록 본 발명은 예시적인 실시예로 기술되어 있지만, 이러한 실시예로 제한되지 않는다. 오히려, 첨부된 청구항은 본 발명의 등가 발명의 사상과 범주에서 벗어나지 않고 당업자가 수행할 수 있는 본 발명의 다른 변형 및 실시예를 포함하도록 넓게 해석되어야 한다.
본 발명은 오디오, 비디오 또는 이들 두 미디어 유형의 결합을 미디어 파일 또는 "미디어 객체"로서 송신 및 수신하기 위한 시스템 및 방법이다. 본 명세서에서 사용된 바와 같이, 용어 "미디어 객체"는 오디오, 비디오, 텍스트, 멀티미디어 데이터 파일, 및 스트리밍 미디어 파일을 포함한다. 멀티미디어 객체는 텍스트, 이미지, 비디오 및 오디오 데이터의 임의의 조합물을 포함한다. 스트리밍 미디어는 오디오, 비디오, 멀티미디어, 텍스트 및 상호동작 데이터 파일을 포함하며, 이들 파일은 인터넷, 위성 또는 기타 통신 네트워크 환경을 통해 유저에게 전달되고 전체 파일 전달이 완료되기 이전에 유저의 컴퓨터/디바이스 상에서 재생되기 시작한다. 미디어 객체는 인터넷, 위성(DSS, DVB-S), 케이블, DSL, T1 라인, 무선 네트워크, 또는 미디어 객체를 전달할 수 있는 기타 전달 시스템을 포함하는 임의의 통신 네트워크를 통해 송신될 수 있다.
미디어 객체의 콘텐츠의 예로 노래, 정치 연설, 뉴스 방송, 영화 예고편, 영화, 텔레비전 쇼 방송, 라디오 방송, 파이낸셜 컨퍼런스 콜(financial conference calls), 생방송 콘서트, 웹-캠 푸티지(web-cam footage), 및 다른 특별 이벤트를 포함한다. 미디어 객체는 REALAUDIO(등록상표), REALVIDEO(등록상표), REALMEDIA(등록상표), APPLE QUICKTIME(등록상표), MICROSOFT WINDOWS(등록상표) MEDIA FORMAT, QUICKTIME(등록상표), MPEG-2 비디오 압축, MPEG-4 비디오 및/또는 오디오 압축, 조인트 비디오 팀 압축 포맷(MPEG-4 파트 10 AVC, H.264), MPEG-4 레이어 Ⅲ 오디오, MP3(등록상표)를 포함하는 여러 포맷으로 인코딩된다. 전형적으로, 미디어 객체는 특정한 포맷과의 호환성을 지시하는 확장자(접미부)로 표기된다. 예컨대, 확장자, .ram, .rm, .rpm 중 하나로 끝나는 미디어 객체(예컨대, 오디오 및 비디오 파일)는 REALMEDIA(등록상표) 포맷과 호환성이 있다. 파일 확장자 및 그 호환 가능한 포맷의 일부 예가 표 1에 나열되어 있다. 미디어 유형, 확장자 및 호환 가능한 포맷의 더 자세한 목록은 http://www.bowers.cc/extensions2.htm에서 볼 수 있다.
포맷 확장자
REALMEDIA(등록상표) .ram, .rm, .rpm
APPLEQUICKTIME(등록상표) .mov, .qif
MICROSOFTWINDOWS(등록상표) MEDIA PLAYER .wma, .cmr, .avi
MACROMEDIA FLASH .swf, .swl
MPEG .mpg, .mpa, .mp1, .mp2
MPEG-2 LAYERⅢ Audio .mp3, .m3a, .m3u
본 발명의 바람직한 실시예는 "거의 동화상 품질"인 비디오 프리젠테이션을 표시하기 위한 비디오 데이터를 포함하는 미디어 객체로 동작한다. 이러한 미디어 객체는 MPEG-2{동화상 표준 그룹 표준(Motion Picture Standards Group Standard) ISO/IEC 13818-1:2000} 및 ITU-T H.264/MPEG AVC(ISO/IEC 14496-10)와 같은 다양한 포맷으로 인코딩될 수 있거나, 비압축될 수 있다. 더나아가, 본 발명의 기술된 실시예는 또한 영화나 텔레비전 쇼의 후-생산(post-production)과 같은 애플리케이션과 큰 미디어 객체의 송신을 필요로 하는 다른 애플리케이션에 대한 전문적인 영역에서 사용될 수 있다.
도 1에는, 본 발명에 따른 송신 시스템이 도시되어 있다. 시스템(100)은 큰 미디어 객체를 클라이언트(140)에 전송하기 위한 송신 시스템의 실시예를 디스플레이한다. 파일 서버(110)는 다수의 미디어 객체를 저장할 수 있는 Terabytes 및/또는 Gigabytes 용량을 갖는 하드드라이브 매트릭스와 같은 저장 디바이스이다. 파일 서버(110)는 근거리 네트워크를 거쳐서 마스터 제어기(120)와 파일 분할 관리자(130)와 같은 제어 구성요소를 수용하는 서버(115)에 연결된다. 서버(115)는 바람직하게는 네트워크(170)를 거쳐서 송신되는 미디어 객체를 송신할 수 있는 호스트 컴퓨터나 일련의 컴퓨터를 포함한다. 임의의 개시된 마스터 제어기 및 파일 분할 관리자는 본 발명의 원리에 따라 하드웨어, 소프트웨어, 또는 하드웨어 및 소프트웨어의 조합으로서 구현될 수 있다는 점을 주목해야 한다.
마스터 제어기(120)는 네트워크(170)를 거친 분할된 미디어 객체의 클라이언트(140)로의 전송을 관리한다. 마스터 제어기(120)는 또한 파일 서버(110)와, 미디어 객체의 다수의 부분으로의 세그먼트화하기 위한 파일 분할 관리자(130)의 동작을 조정한다. 파일 세그먼트화는 미디어 파일의 세그먼트화 및 이러한 송신된 세그먼트의 에러 복구 모두를 실현할 것을 미디어 객체에게 요청하는 클라이언트 측 상의 자원의 이용 가능성을 기초로 한다. 바람직하게, 마스터 제어기(120)와 클라이언트(140) 사이의 제어 통신은 TCP/IP 호환성 네트워크 연결을 거쳐서 관리된다.
파일 분할 관리자(130)는 마스터 제어기(120)로부터 발행된 지령에 따라 미디어 객체의 적절한 세그먼트를 검색 및 전송해야 한다. 바람직하게, 파일 분할 관리자(130)는 Postel, J.가 저술한 "User Datagram Protocol"(코멘트 요청 768, USC/정보 과학 협회, 1980년 8월)에 기술된 네트워크 연결에 걸쳐서 UDP 기반 프로토콜을 사용하여 그 관련된 파일 세그먼트를 클라이언트(140)에 전송한다. 파일 그룹 분할 관리자(130)는 이상적으로는 동시, 또는 병렬로 그 각각의 세그먼트나 패킷을 송신하고, 그에 따라 송신된 데이터는 동시에 클라이언트(140)에서 수신된다.
네트워크(170)는 종래기술에 알려진 임의의 유형의 네트워크일 수 있다. 바람직하게, 이러한 네트워크는 서버의 서버 측과 클라이언트의 클라이언트 측에서 자원 사이의 다수의 연결을 수용할 수 있으며, 이러한 연결은 UDP 기반, TCP/IP 기반, 또는 이들 둘 모두의 혼합이다. 네트워크(150)가 점유한 대역폭은 바람직하게는 T1 연결(1.5Megabits/sec, 즉 Mbps), T3 연결(45Mbps), DS3 연결(45Mbps), OC3 연결(155Mbps), OC12(248000Mbps) 등과 같은 큰 대역폭 연결이다.
바람직하게, 클라이언트(140)는 네트워크(170)를 거쳐서 송신된 미디어 객체를 수신할 수 있는 호스트 컴퓨터나 일련의 컴퓨터를 포함한다. 바람직하게, 각 클라이언트(140)는 IP 어드레스 및 포트 어드레스와 관련되는 일련의 액세스 포인트나 노드를 갖는다. 이러한 액세스 포인트는 클라이언트 측에서 마스터 제어기(150)와 파일 분할 관리자(160)로서 도시된다.
분할된 미디어 객체의 세그먼트는, 전술된 바와 같이 파일 분할 관리자(130)에 의해 UDP를 통해 클라이언트(140)의 액세스 포인트의 IP 어드레스 및 포트에 송신된다. 비록 클라이언트(140)가 이러한 구성요소를 갖지 않을 지라도, 액세스 포인트는 또한 이 경우 파일 분할 관리자(160)인 클라이언트(140)와 관련된 액세스 포인트와 관련된 대응하는 네트워크 인터페이스 카드 어드레스(NIC 어드레스)나 미디어 액세스 제어(MAC) 어드레스에 의해 식별될 수 있다. 그러면, 클라이언트(140)의 액세스 포인트에 의해 수신된 미디어 객체의 세그먼트는 완전히 수신될 때 미디어 객체로 재구성된다. 미디어 객체의 손실된 세그먼트는 이 명세서에서 추후에 기술될 기술을 사용하여 대체된다. 본 발명의 동작에 대해서, 마스터 제어기(120)와 파일 분할 관리자(130)가 동일한 서버(115)를 점유하거나, 몇몇 서버(115)를 점유할 수 있음을 주목해야 한다. 추가적으로, 마스터 제어기(150)와 파일 분할 관리자(160)는 원하는 송신 시스템의 요건에 따라 동일한 클라이언트(140)를 점유하거나 몇몇 클라이언트(140)를 점유할 수 있다. 본 발명의 원리는 다수의 서버(115)나 클라이언트(140)가 동일한 미디어 객체를 송신 및/또는 수신하는데 사용되는 기타 분포된 네트워크 환경에 응용될 수 있다.
도 2는 세그먼트화된 미디어 객체를 단일 클라이언트(240)에 전송하기 위한 본 발명의 실시예를 도시한다. 본 발명의 이러한 실시예에서, 시스템(200)은 네트워크(250)를 거쳐서 미디어 객체를 서버(215)에 요청하는 클라이언트(240)를 가지며, 여기서, 미디어 객체는 파일 서버(210)에 저장된다. 이 실시예에서, 클라이언트(240)는 미디어 객체에 대한 요청을 발행하고, 세그먼트화된 미디어 객체를 수신하는데 이용 가능한 파일 분할 관리자(230)를 구성하기 위해 마스터 제어기(220)를 구비한다. 마스터 제어기(220)는 TCP/IP 기반 송신을 사용하여 파일 분할 관리자(230)의 어떠한 대응하는 UDP 포트가 대응하는 파일 세그먼트를 수신할 것인지와 요청된 미디어 객체가 세그먼트화될 것인지를 서버(215)에 지시한다. 마스터 제어기(220)는, 모든 세그먼트가 네트워크(250)를 거쳐서 그 각자의 UDP 연결을 통해 파일 분할 관리자(230)로부터 성공적으로 검색될 경우에 수신된 세그먼트를 연결한다.
도 3은 Thaler, D.가 저술한 "Interoperability Rules for Multicast Routing Protocols"(코멘트 요청 2715, Microsoft, 1999년 10월)에서 기술된 IP 멀티캐스팅 아키택쳐를 사용하여 세그먼트화된 미디어 객체를 다수의 클라이언트(350)에 전송하기 위한 본 발명의 실시예를 도시한다.
이러한 실시예에서, 적어도 두 개의 클라이언트(340)가 존재하며, 여기서, 각 클라이언트(340)는 파일 서버(310)에 저장된 미디어 객체에 대한 요청을 발급하기 위해 대응하는 마스터 제어기(350)를 갖는다. 그러나, 각 마스터 제어기(350)는 미디어 객체를 요청하는 모든 클라이언트(340)를 동기화하기 위해 필요한 지연을 고려해야 한다. 미디어 객체에 대한 요청은 각 마스터 제어기(350)에 의해 서버(315)에 대해 구축되며, 그러면, 서버(315)는 세그먼트화된 미디어 객체를 클라이언트(340)의 대응하는 파일 분할 관리자(360)에 멀티캐스팅하거나, 단일 마스터 제어기(360)는 IP 어드레스를 지정하고, 미디어 객체의 세그먼트가 멀티캐스트 네트워크(370)를 거쳐서 이러한 어드레스로 IP 멀티캐스트를 통해 송신되어야 한다. 파일 세그먼트의 파일 분할 관리자(360)로의 송신 및 클라이언트(340)에서 이러한 수신된 파일 세그먼트의 미디어 객체로의 재구성은 도 1 및 도 2에 대해 본 명세서에서 기술된 것과 유사하다.
대안적으로, 마스터 제어기(350)는 분할된 미디어 객체를 수신하기 위해 서버(315)의 마스터 제어기(320)와 연계하여 동작한다. 마스터 제어기(320)는 마스터 제어기(350)에게 어떠한 멀티캐스트 어드레스가 분할된 미디어 객체의 세그먼트를 송신하는데 사용될 것인지를 통보한다. 각 마스터 제어기(350)는 멀티캐스트 네트워크(370)를 거쳐서 이러한 세그먼트를 수신할 것을 그 각각의 파일 분할 관리자에게 명령할 것이다.
도 4는 본 발명의 실시예에 따라 미디어 객체를 송신하기 위한 방법(400)의 흐름도이다. 흐름도에서 제시된 단계가 도 1을 참조하여 제시되어 있다. 단계(405)에서, 클라이언트(140)는 네트워크(170)를 통해서 서버(115)와 관련된 마스터 제어기(120)와 연결된다. 이러한 연결은 TCP/IP 소켓을 거쳐서 구축되며, 여기서, 클라이언트(140)는 전송될 미디어 객체를 식별한다. 이러한 단계 동안에, 클라이언트(140)는 또한 미디어 객체의 송신에 대한 통신율 지정한다.
단계(415)에서, 마스터 제어기(120)는 클라이언트(140)에 의해 제기된 필요한 통신율을 충족하는데 필요한 파일 분할 관리자(130)의 개수를 결정한다. 이러한 단계는 또한 다수의 서버가 세그먼트화된 미디어 객체의 송신에 수반되어야 한다는 점을 포함할 수 있다. 단계(420)는 마스터 제어기(120)가 미디어 객체 중 어떠한 세그먼트 및 어떠한 UDP 포트가 클라이언트(140)에 송신하기 위해 사용될 것인지를 각 분할 관리자(130)에 지시하는 단계이다.
단계(425)는 최종적으로 송신될 미디어 객체의 세그먼트를 다운로드하기 위해 필요한 UDP 포트의 클라이언트(140)를 마스터 제어기(120)가 지시하는 것을 수반한다. 또한, 제어 정보는 마스터 제어기(120)에 의해 클라이언트(140)에 송신되며, 얼마나 많은 패킷이 분할된 미디어 객체의 특정한 세그먼트에 대해 UDP 포트로부터 유입될 것인지를 지시한다. 단계(430)는 각 파일 분할 관리자(130)가 그 할당된 UDP 포트 상에서 송신될 패킷 상에 헤더 블록을 놓는 단계이다. 바람직하게, 헤더 블록은 후속해서 번호순으로 생성된다. 그러면, 패킷은 클라이언트(140)에 송신된다.
그러면, 클라이언트(140)는 어떠한 클라이언트 기반 파일 분할 관리자(160)가 단계(435)에서 사용될 것인지와, 어떠한 서버가 송신된 파일을 수신하도록 활성화될 것인지를 결정한다. 단계(440)에서, 클라이언트 기반 파일 분할 관리자(160)는 액세스 포인트로서 미디어 객체의 송신된 세그먼트를 나타내는 패킷을 대응하는 UDP 포트 상에서 수신한다. 수신된 패킷의 헤더 블록에서의 시퀀스 식별자는 미디어 객체의 수신된 세그먼트를 재구성하는 방법을 결정한다.
만약 임의의 패킷이 특정한 파일 분할 관리자(160)에 대해서 손실되어 있다면, 단계(445)는 클라이언트(140)가 어떠한 패킷이 손실되어 있고 대응하는 파일 분할 관리자(130)에 의해 재송신되어야 하는지를 TCP/IP 연결을 거쳐서 마스터 제어기(120)에게 통지하는 단계이다. 바람직하게, 클라이언트(140)는 서버 측에서 마스터 제어기(120)와 통신하기 위한 클라이언트 측 마스터 제어기(150)를 갖는다. 단계(450)에서, 클라이언트(140)는 미디어 객체의 특정한 세그먼트가 완전히 수신되었다고 마스터 제어기(120)에게 지시한다. 만약 미디어 객체의 전체 다운로드가 완료되지 않는다면, 클라이언트(140)는 추가로 마스터 제어기(120)에게 새로운 파라미터를 사용하여 미디어 객체의 추가적인 세그먼트를 송신할 것을 지시한다{단계(420 내지 445)에서 실행된 바와 같이}.
단계(460)는 마스터 제어기(120)가 클라이언트(140)에게 분할된 미디어 객체의 모든 세그먼트가 송신되었음을 통보하는 단계이다. 그러면, 클라이언트(140)는 미디어 객체의 수신된 세그먼트를 사용하여 미디어 객체를 재구성한다.
도 5는 분할된 미디어 객체의 파일 세그먼트의 예시적인 실시예를 도시한다. 이 도면에 도시된 바와 같이, 파일 세그먼트는 메이저(major) 세그먼트(510)와 마이너(minor) 세그먼트(520)를 포함한다. 메이저 세그먼트(510)는 메이저 세그먼트 경계로서 클라이언트(140)와 서버(115)에 의해 사용되며, 여기서, 메이저 세그먼트(510)는 파일 세그먼트를 전송하는데 사용되는 큰 "블록"이다. 마이너 세그먼트(520)는 메이저 세그먼트(510)를 구성하는데 사용되는 더 작은 "블록"이다. 본 발명의 바람직한 실시예에서, 메이저 세그먼트(510)는, 제 2 메이저 세그먼트(510)가 송신되기 이전에 클라이언트(140)에 의해 완전히 수신되어야 한다. 만약 메이저 세그먼트(510)가 완전히 수신되지 않는다면, 클라이언트(140)는 제어기(120)에게 상기 메이저 세그먼트(510)의 어떠한 마이너 세그먼트(520)가 재송신될 지를 지시하며, 여기서, 각 마이너 세그먼트(520)는 서버(115)의 특정한 파일 분할 관리자(130)에 대응한다.
유니캐스트 송신에서, 마스터 제어기(120)는 메이저 세그먼트(510)를 파일 그룹 분할 관리자(130)에게 표시한다. 그러면, 각 파일 분할 관리자(130)에는 메이저 세그먼트(510)의 일부분이 UDP 패킷으로서 송신되는 마이너 세그먼트(520)로서 할당된다. 메이저 세그먼트(510)를 구성하는데 사용된 마이너 세그먼트(520)가 성공적으로 송신된다면, 각 파일 분할 관리자(130)는 마스터 제어기(120)에게 메이저 세그먼트의 송신이 완료됨을 통보한다. 그러면, 마스터 제어기는 전술된 바와 같이 파일 분할 관리자(130)에 의해 분할되고 클라이언트(140)에 송신될 제 2 마이너 세그먼트(520)를 발급할 것이다.
유리하게, 마스터 제어기(120)는 네트워크 조건의 변화를 지시하는 메시지를 클라이언트(140)로부터 처리하면서, 메이저 세그먼트(510)의 파이프라인을 만들어서, 휴지 시간에 대한 필요를 제거하도록 구성될 수 있다. 메이저 세그먼트(510)의 크기는 또한 네트워크 조건에 응답하여 변경될 수 있다. 예컨대, 메이저 세그먼트(510)는 10개의 마이너 세그먼트(520)로 구성될 수 있다. 패킷의 손실이 마이너 경우에, 메이저 세그먼트(510)의 크기는 12개의 마이너 세그먼트(520)까지 증가할 것이다. 대안적으로, 패킷의 손실이 상당히 있는 경우, 메이저 세그먼트(510)의 크기는 8개의 마이너 세그먼트(520)까지 감소할 것이다. 마이너 세그먼트 양의 조정은 본 발명의 원리에 따라 변경될 수 있다.
메이저 세그먼트(510)에서 마이너 세그먼트(520)의 수가 동일하게 유지했다면, 메이저 세그먼트(510)의 물리적인 크기(Kilobytes)는 네트워크 조건에 따라서 변경되었을 것이라는 점을 또한 고려해야 한다. 이러한 결정은 바람직하게는 클라이언트(140)의 마스터 제어기(150)에 의해 이뤄진다. 대안적으로, 마스터 제어기(120)는 또한 메이저 세그먼트(510)의 사용을 제거할 수 있고, 연속 데이터 블록으로서 생성된 마이너 세그먼트(520)의 사용에 의존할 수 있다. 그러면, 파일 분할 관리자(130)는 이들 마이너 세그먼트(520)를 클라이언트(140)에 송신하고, 여기서, 각 파일 분할 관리자(130)는 마스터 제어기(120)에게 각 마이너 세그먼트(520)의 성공적인 송신에 대해 통보한다. 그러면, 마스터 제어기(120)는 파일 분할 관리자(130)에 송신될 새로운 마이너 세그먼트(520)를 할당하며, 분할된 미디어 객체의 세그먼트의 마이너 세그먼트(520) 모두가 성공적으로 송신될 때가지 이러한 공정을 반복한다.
유니캐스트(또는 하나의 클라이언트) 송신의 경우, 본 발명은 패킷이 송신과 같은 기간 동안에 손실되는 경우에 몇 가지 복구 방식을 제공한다. 일 실시예에서, 마스터 제어기(120)는 데이터 패킷을 송신하기 위해 추가적인 파일 분할 관리자(130)를 추가할 수 있다. 대안적으로, 마스터 제어기(120)는 패킷을 기존의 파일 분할 관리자(130)에게 재전송하는 임무를 할당한다.
패킷 손실 방지를 위한 제 2 방식은 마스터 제어기(120)가 손실된 패킷의 링크 목록을 유지하는 것을 수반한다. 이 실시예에서, 서버(115)의 마스터 제어기(120)와 파일 분할 관리자(130)는 분할된 미디어 객체의 메이저 세그먼트(510) 및 마이너 세그먼트(520) 모두를 송신하고, 이러한 송신은 "제 1 패스"로서 알려져 있다. 링크 목록의 내용은 "제 1 패스" 송신 동안에 손실된 패킷을 지시하기 위해 마스터 제어기(120)에 의해 사용된다. 그러면, 서버 마스터 제어기(120)는 "제 1 패스" 송신 동안에 성공적으로 수신되지 않았던 메이저 세그먼트(510) 및 마이너 세그먼트(520)의 패킷을 재방송하기 위해 파일 분할 관리자(130)와 클라이언트(140)를 사용하여 "제 2 패스" 송신을 조정한다. 이러한 절차는, 클라이언트(140)에 의해 성공적으로 수신된 패킷의 임계치에 도달할 때까지 반복된다.
추가적인 패킷 손실 기술은 서버 측 마스터 제어기(120)나 클라이언트 측 마스터 제어기(150) 중 어느 하나가 그 각자의 측 상의 각각의 자원을 모니터링하는 것을 포함한다. 예컨대, 만약 클라이언트 측 상의 특정한 파일 분할 관리자(130)가 종료(timing out) 상태를 유지하거나, 만약 클라이언트(140)가 응답을 정지한다면, 마스터 제어기(120)는 파일 분할 관리자(130)에 할당된 작업을 취소하고, (송신 데이터의) 이 작업을 제 2 파일 분할 관리자(130)에 재할당하거나, 메이저 세그먼트(510)를 파일 그룹 분할 관리자(130)에 재할당할 것이다. 마스터 제어기(120)는 유저에게 이러한 종료 실패에 대해 통지한다.
대안적으로, 클라이언트 측 상의 통계치를 추적함으로써, 마스터 제어기(150)는 UDP 어드레스가 연속해서 패킷을 손실하고 있음을 발견할 수 있다. 그러면, 마스터 제어기(150)는 서버 측 마스터 제어기(120)에게 UDP 어드레스에 문제가 있음을 통보하며, 시스템의 서버나 클라이언트 측 중 어느 한 측 상에서의 잘못된 파일 분할 관리자를 지시한다. 그러면, 마스터 제어기(120 및 150)는 새로운 UDP 어드레스로의 패킷 송신을 조정하며, 이것은 새로운 파일 분할 관리자의 사용을 수반할 수 있다. 이들 실시예는 또한, 마스터 제어기(120 또는 150) 중 어느 하나가 전술된 바와 같이 기술된 종료나 UDP 실패 패킷 손실 방식을 구현하는데 사용될 수 있음을 고려하고 있다.
멀티캐스트 송신에 대한 패킷 손실 기술은, 서버의 마스터 제어기가 송신된 패킷의 손실을 방지하는 다른 방법을 사용하기 위해 준비되어야 한다는 점을 요구한다. 도 3을 참조하면, 서버 마스터 제어기(320)는 유니캐스트 송신에 사용된 링크 목록과 유사한 세그먼트 미디어 객체의 메이저 세그먼트(510)와 마이너 세그먼트(520)의 송신 동안에 손실된 패킷의 링크 목록을 유지한다. 도 6에서 도시된 바와 같이, 이러한 링크 목록에 대한 변경은 2차원 어레이를 점유하며, 여기서, 손실 패킷(마이너 세그먼트)은 모든 클라이언트(340)에 대해서 손실되었다. 분할된 미디어 객체의 "제 1 패스" 송신은, 미디어 객체의 메이저 세그먼트(510) 모두가 송신될 때, 완료된다. 각 송신된 메이저 세그먼트(510)가 완료하면, 링크 목록은 마스터 제어기(320)에 의해 업데이트된다.
그러면, 마스터 제어기(320)는 "제 1 패스" 동안에 클라이언트(340)에 의해 성공적으로 수신되지 않은 데이터 패킷을 재방송하기 위해 링크 목록의 내용을 사용한다. 이러한 "제 2 패스" 송신은 "손실 패킷" 정보로 송신되는 메이저 세그먼트(510)와 마이너 세그먼트(520)를 갖는다. 이러한 방법은, 모든 클라이언트(340)가 분할된 미디어 객체의 모든 세그먼트를 수신할 때까지 반복된다. 멀티캐스트 송신 모델은 또한 마스터 제어기(320)가 전술된 유니캐스트 송신 모델에 대해 기술된 종료 및 UDP 패킷 손실 방식을 사용하게 함을 주목해야 한다.
선택적으로, 본 발명은 분할된 미디어 객체를 송신하는데 사용된 송신 기술에 유리한 제어-처리 방식을 사용하는 추가적인 실시예를 제공한다. 구체적으로, 본 발명은 미디어 객체를 송신하는데 사용되는 송신 기술이 이러한 파일에 대해 이뤄진 요청에 따라 변경될 수 있는 동작을 제공한다.
예컨대, 미디어 객체는 전술된 유니캐스트 기술을 사용하여 UDP 송신으로서 현재 송신되고 있다. 동일한 파일에 대한 제 2 요청은 이러한 송신 과정 동안에 서버에 유입된다. 도 3을 참조하면, 클라이언트(340)의 클라이언트 측 파일 분할 관리자(330)는 분할된 미디어 객체의 세그먼트를 수신하는 단계를 종료한다. 그러면, 파일 분할 관리자(330)는 분할된 미디어 객체의 새로운 세그먼트를 수신하도록 진행하는 방법에 대한 추가적인 지령을 대기한다. (세그먼트를 수신했던 클라이언트의) 클라이언트 마스터 제어기(350)는 클라이언트(340)가 송신된 세그먼트를 성공적으로 수신했다는 점을 서버 마스터 제어기(320)에게 통보한다. 바람직하게, 비록 시스템이 또한 통신이 마이너 세그먼트(520)에 대해서 발생하게 할 수 있을 지라도, 이러한 통신은 메이저 세그먼트(510)의 경계에서 발생한다.
마스터 제어기(320)는 클라이언트 마스터 제어기(350)에게 미디어 객체의 그 다음 세그먼트가 새로운 어드레스, 구체적으로는 멀티캐스트 어드레스로부터 유래할 것임을 통보한다. 그러면, 클라이언트 마스터 제어기(350)는 표시된 멀티캐스트 어드레스로부터 미디어 객체의 그 다음 세그먼트를 수신할 것을 파일 분할 관리자(330)에게 지시한다. 그러는 동안에, 마스터 제어기(320)는 파일 분할 관리자(330)가 표시된 멀티캐스트 어드레스로부터 미디어 객체의 이러한 그 다음 세그먼트를 멀티캐스트 패킷의 형태로 송신하기 시작함을 표시한다. 미디어 객체를 요청하는 새롭게 추가된 다른 모든 클라이언트(340)는 또한 미디어 객체의 세그먼트를 그 멀티캐스트 어드레스로부터 수신하라는 지시를 받을 것이다.
마스터 제어기(320)는, 모든 세그먼트가 수신되었을 때까지 분할된 미디어 객체의 세그먼트 모두를 클라이언트(340)에 송신할 것이다. 전술된 패킷 손실 기술은 데이터 송신을 보강하는데 사용될 수 있다.
클라이언트(340)나 클라이언트(340) 그룹이 진행중인 멀티캐스트 송신 과정 동안에 동일한 미디어 객체를 요청하는 경우에, 마스터 제어기(320)는 새로운 클라이언트(340) 모두에게 그 다음 메이저 세그먼트(510) 경계에서 진행중인 멀티캐스트와 결합할 것을 통보한다. 이러한 동작은, 마스터 제어기(320)가 요청된 미디어 객체의 세그먼트를 송신하는 대응하는 파일 분할 관리자(330)의 멀티캐스트 어드레스를 송신하게 함으로서, 실현된다. 모든 동기화 및 제어 통신은 바람직하게는 마스터 제어기(320 및 350) 사이에서 TCP/IP 소켓을 거쳐서 통신된다. 추가적으로, 멀티캐스트 세그먼트의 재방송은 바람직하게는 또한 TCP/IP 인터페이스를 거쳐서 실행된다. 다른 제어 통신은 본 발명의 원리에 따라 사용될 수 있음을 주목해야 한다.
본 발명의 기술된 시스템은 클라이언트 측이나 서버 측의 마스터 제어기가 자원, 특히 파일 분할 관리자의 사용을 재구성할 수 있다는 점을 제공한다. 전송율 제어 동작의 경우, 클라이언트는 서버가 원하는 통신율로 분할된 미디어 객체를 송신해야 함을 요청할 수 있다. 서버의 마스터 제어기는 서버의 파일 분할 관리자가 이러한 요청에 응답하여 어떻게 사용되어야 하는지를 결정할 것이다. 추가적으로, 클라이언트는, 미디어 객체가 "08:00에서 17:00까지는 이용 가능한 대역폭의 20%를 사용하고, 그 밖의 시간에는 이용 가능한 대역폭의 90%를 사용하라"는 것과 같은 우선 메커니즘이나 규칙을 사용하여 송신되어야 함을 요청할 수 있다. 서버의 마스터 제어기는 또한 이러한 요청에 응답하여 파일 분할 관리자의 사용을 변경할 것이다. 유사하게, 서버는 분할된 미디어 객체를 송신하는데 사용된 대역폭에 대한 제한을 자발적으로 지정할 수 있다. 본 발명의 바람직한 실시예에서, 서버 및 클라이언트는 최고 발생 가능한 전송율을 달성하기 위해 모든 이용 가능한 전송 자원을 사용하고자 할 것이다.
본 발명은, 분할된 미디어 객체의 장래 송신에 대해 자원 할당이 더 양호하게 결정될 수 있도록, 시스템 성능에 대해 자체-인지(self-teaching)하도록 구성된다. 중앙 처리 장치(CPU) 이용율(utilizations), NIC 처리량, 송신 에러율, 및 말단간 전송 속도에 대한 통계치가 수집된다. 이러한 통계치는 운영체계 및 기타 제 3 자 모니터링 툴을 통해 파일 전송 동안에 수집된다. 클라이언트나 서버 측 중 어느 하나에서의 마스터 제어기는 클라이언트가 세그먼트를 처리하는데 얼마나 걸리는지를 측정함으로써 네트워크 처리량을 유도한다.
시스템 성능에 대한 정보를 사용하여, 클라이언트 및 서버의 마스터 제어기는 미디어 서버가 어떻게 분할되어야 하는 지와, 얼마나 많은 파일 분할 관리자가 사용되어야 하는 지와, 특정한 클라이언트나 서버에 대해 네트워크 지연시간 및 에러율이 어떻게 고려되어야 하는지에 대한 이들 제어기의 가정을 조정할 수 있다.
서버와 클라이언트 사이에 통신된 명령은 아래의 표 2 내지 8에서 기술되어 있다. 표 2는 요청된 미디어 객체의 전송을 개시하기 위해 클라이언트가 서버에 발행한 전송 요청 명령의 예시적인 실시예를 개시하고 있다.
요소 바이트 용도
메시지 유형 1 이것이 파일 전송 요청임을 지시하는 식별자
파일이름 100 이 세그먼트가 관련된 파일의 이름
통신율 1 전송이 어떠한 통신 속도에서 행해져야 하는지에 대한지시자
멀티캐스트 1 요청을 수행하기 위해 멀티캐스트를 사용하도록 허용될수 있는지에 대한 지시자
세션 ID 4 메시지 유형이 재시작 임무용인 경우의 세트
표 3은 분할된 미디어 객체의 지정된 세그먼트에 대해 송신하기 위해 기대해야 하는 패킷의 수에 대해 클라이언트에게 통보하기 위해 서버의 파일 분할 관리자에 의해 사용된 예시적인 데이터 제어 명령의 포맷을 개시하고 있다. 또한, 이러한 명령은 최종 파일 복사본에서 수신된 (메이저 또는 마이너) 세그먼트가 배치되어야 하는 곳을 식별하기 위해서 사용된다.
요소 바이트 용도
표시자 7 문자 "CONTROL"
세그먼트 ID 4 세그먼트의 식별자
파일 이름 100 이 세그먼트가 관련되는 파일 이름
오프셋 8 이 세그먼트가 위치해야 하는 최종 파일 내의 오프셋
숫자 4 이 세그먼트에서 수신될 패킷의 수
CRC 4 패킷 완전성을 확인하기 위한 이전 121bytes의 CRC 체크
표 4는 서버로부터 클라이언트로 데이터를 송신하는데 사용되는 예시적인 데이터 패킷의 포맷을 개시한다. 구체적으로, 이러한 데이터 패킷 포맷은 분할된 미디어 객체의 메이저 및 마이너 세그먼트를 형성하는데 사용된다.
요소 바이트 용도
시퀀스 ID 4 송신중인 세그먼트 내의 기타 데이터 패킷
길이 4 패킷 내의 바이트의 수
데이터 NA 길이 요소에 지정된 길이의, 패킷에 대한 데이터 바이트
CRC 4 패킷 완전성을 확인하기 위한 데이터의 CRC 체크
표 5는 성공적으로 수신되지 않았던 식별된 패킷의 재송신을 요청하기 위해 클라이언트에 의해 사용되는 예시적인 재송신 명령의 포맷을 개시한다. 이러한 명령은 손실된 패킷의 송신을 담당하는 서버에 송신된다.
요소 바이트 용도
메시지 유형 1 이것이 패킷 재송신 요청임을 지시하는 식별자
세그먼트 ID 4 어떠한 패킷이 손실되어 있는지에 대한 세그먼트 ID
길이 4 패킷 요소에서 공급된 패킷 식별자의 수
패킷 가변적임 손실된 각 패킷의 식별자가 이 요소에서 채워짐
표 6은 서버로부터 클라이언트로 송신되며 파일 전송의 시작을 지시하는 예시적인 구성 명령의 포맷을 개시한다. 이러한 명령은 구체적으로는 서버로부터 데이터를 수신하기 위해 어떠한 ID 어드레스 또는 포트를 사용할 것인지를 클라이언트에게 지시한다.
요소 바이트 용도
메시지 유형 1 이것이 구성 메시지임을 지시하는 식별자
세션 ID 4 재시작에 사용되는 작업용의 식별자
프로토콜 1 UDP나 멀티캐스트 기반 프로토콜을 사용할지를 지시함
스트림 1 연결해야할 스트림의 수
스트림 어드레스 가변적임 파일 세그먼트를 수신하기 위해 연결해야 할 IP 어드레스/포트수의 어레이
표 7은 서버의 마스터 제어기에 의해 사용되고, 메이저/마이너 세그먼트를 송신하는데 사용되는 파일 분할 관리자에 통신되는 예시적인 분할 명령의 포맷을 개시한다. 이러한 명령은 미디어 객체가 파일 분할 관리자 사이에서 어떻게 분할되는지를 지시한다.
요소 바이트 용도
메시지 유형 1 이것이 분할 메시지임을 지시하는 식별자
프로토콜 1 UDP나 멀티캐스트를 사용할지를 지시함
파일 이름 255 송신하기 위해 개방해야할 파일의 경로 이름
오프셋 8 데이터를 판독하기 위한 파일의 오프셋
바이트 4 세그먼트에서 송신해야할 바이트의 수
표 8은, 파일 분할 관리자가 세그먼트 처리를 완료하였음을 지시할 때, 클라이언트 측 마스터 제어기에 의해 서버에 통신된 세그먼트 완료 명령의 포맷을 개시한다. 완료된 세그먼트를 처리하는 서버의 파일 분할 관리자는 처리할 분할된 미디어 객체의 그 다음 세그먼트를 통보 받을 것이다. 그러면, 파일 분할 관리자는 표 3에 도시된 명령에 따라 데이터 제어 명령을 클라이언트에 발행할 것이다.
요소 바이트 용도
메시지 유형 1 이것이 세그먼트 완료 메시지임을 지시하는 식별자
세그먼트 ID 4 처리가 완료된 세그먼트의 식별자
상술한 바와 같이, 본 발명은 디지털 오디오 및 비디오 파일, 구체적으로는 네트워크를 통해 통신된 미디어 객체를 송신하는 분야에 이용된다.

Claims (18)

  1. 네트워크(170)에 걸쳐서 송신하기 위해 미디어 객체를 세그먼트화하는 방법으로서,
    미디어 객체를 적어도 두 개의 세그먼트로 분할하는 단계와;
    상기 세그먼트 중 적어도 하나를 파일 분할 관리자(130, 160)에 할당하는 단계와;
    할당된 유저 데이터그램 프로토콜(UDP: User Datagram Protocol) 포트를 사용하여 상기 적어도 하나의 세그먼트를 송신하는 단계를,
    포함하는, 네트워크에 걸쳐서 송신하기 위해 미디어 객체를 세그먼트화하는 방법.
  2. 제 1항에 있어서, 파일 분할 관리자가 상기 적어도 하나의 세그먼트를 송신했음을 마스터 제어기에게 통보하는 단계와;
    송신하기 위해 상기 분할된 미디어 객체의 추가적인 세그먼트를 상기 파일 분할 관리자에 할당하는 단계를 포함하는, 네트워크에 걸쳐서 송신하기 위해 미디어 객체를 세그먼트화하는 방법.
  3. 제 2항에 있어서, 상기 마스터 제어기는 적어도 두 개의 파일 분할 관리자를 동작시키며, 상기 관리자에서, 메이저 세그먼트(major segment)를 구성하는 상기 분할된 미디어 객체의 적어도 하나의 세그먼트는 마이너 세그먼트(minor segment)로 분리되며, 각 마이너 세그먼트는 상기 마스터 제어기에 의해 파일 분할 관리자에 할당되는, 네트워크에 걸쳐서 송신하기 위해 미디어 객체를 세그먼트화하는 방법.
  4. 제 3항에 있어서, 상기 마이너 세그먼트는, 제 2 메이저 세그먼트가 마이너 세그먼트로 분리되며, 상기 파일 분할 관리자에 의해 송신되기 이전에, 상기 적어도 두 개의 파일 관리자에 의해 성공적으로 송신되는, 네트워크에 걸쳐서 송신하기 위해 미디어 객체를 세그먼트화하는 방법.
  5. 제 2항에 있어서, 상기 마스터 제어기 및 파일 분할 관리자는 상기 미디어 객체를 송신하는데 사용되는 서버의 일부분인, 네트워크에 걸쳐서 송신하기 위해 미디어 객체를 세그먼트화하는 방법.
  6. 제 2항에 있어서, 상기 마스터 제어기는 송신 제어 프로토콜 및 인터넷 프로토콜(TCP/IP)에 기초한 송신 방식을 사용하여 제 2 마스터 제어기와 통신하며, 상기 파일 분할 관리자는 UDP 포트를 사용하여 서버와 통신하는, 네트워크에 걸쳐서 송신하기 위해 미디어 객체를 세그먼트화하는 방법.
  7. 제 2항에 있어서, 상기 마스터 제어기는 링크 목록에서 성공적으로 송신되지 않은 손실된 세그먼트를 추적하고, 상기 마스터 제어기는 상기 손실된 세그먼트를 담당하는 상기 파일 분할 관리자가 상기 손실된 세그먼트를 재송신하게 하는, 네트워크에 걸쳐서 송신하기 위해 미디어 객체를 세그먼트화하는 방법.
  8. 제 2항에 있어서, 상기 마스터 제어기는, 상기 파일 분할 관리자가 상기 세그먼트를 전달하는데 실패할 경우에 응답하여 상기 분할된 미디어 객체의 상기 세그먼트를 제 2 파일 분할 관리자에게 재할당하는, 네트워크에 걸쳐서 송신하기 위해 미디어 객체를 세그먼트화하는 방법.
  9. 제 1항에 있어서, 상기 세그먼트는 복수의 클라이언트에 의해 수신하기 위해 멀티캐스트 순응 송신 방식을 사용하여 송신되는, 네트워크에 걸쳐서 송신하기 위해 미디어 객체를 세그먼트화하는 방법.
  10. 네트워크에 걸쳐서 송신하기 위해 미디어 객체의 세그먼트를 수신하기 위한 방법으로서,
    네트워크(170)에 걸쳐서 송신하기 위한 미디어 객체를 요청하는 단계와;
    상기 미디어 객체의 세그먼트를 수신하는데 사용되는 유저 데이터그램 프로토콜(UDP) 포트에 대한 지령을 수신하는 단계로서, 상기 미디어 객체가 적어도 두 개의 세그먼트로 분할되는, 지령 수신 단계와;
    상기 UDP 포트에 걸쳐서 상기 세그먼트를 수신하는 단계를,
    포함하는, 네트워크에 걸쳐서 송신하기 위해 미디어 객체의 세그먼트를 수신하기 위한 방법.
  11. 제 10항에 있어서, 상기 미디어 객체에 대한 상기 요청은 클라이언트에 의해 마스터 제어기를 통해 이뤄지고, 상기 세그먼트 수신 단계는 상기 마스터 제어기가 상기 클라이언트의 파일 분할 관리자를 동작함으로서 조정되는, 네트워크에 걸쳐서 송신하기 위해 미디어 객체의 세그먼트를 수신하기 위한 방법.
  12. 제 11항에 있어서, 상기 미디어 객체에 대한 상기 단계 동안에 상기 마스터 제어기는 상기 미디어 객체를 수신해야할 원하는 전송율 및 상기 클라이언트에서의 자원의 이용 가능성을 지시하는, 네트워크에 걸쳐서 송신하기 위해 미디어 객체의 세그먼트를 수신하기 위한 방법.
  13. 제 10항에 있어서, 클라이언트는 복수의 클라이언트에 의해 수신하기 위해 멀티캐스트 순응 송신 방식의 일부분으로서 상기 세그먼트를 수신하는, 네트워크에 걸쳐서 송신하기 위해 미디어 객체의 세그먼트를 수신하기 위한 방법.
  14. 제 11항에 있어서, 상기 마스터 제어기는 송신 제어 프로토콜 및 인터넷 프로토콜(TCP/IP) 기반 송신 방식을 사용하여 제 2 마스터 제어기와 통신하며, 상기 파일 분할 관리자는 UDP 포트를 사용하여 서버와 통신하는, 네트워크에 걸쳐서 송신하기 위해 미디어 객체의 세그먼트를 수신하기 위한 방법.
  15. 미디어 객체를 송신하기 위한 장치로서,
    상기 미디어 객체를 분할하기 위한 마스터 제어기(120, 150)와;
    상기 분할된 미디어 객체 세그먼트를 송신하기 위한 복수의 파일 분할 관리자(130, 160)를 포함하고,
    여기서, 상기 마스터 제어기(120, 150)는 상기 이용 가능한 파일 분할 관리자(130, 160)에 따라 상기 미디어 객체를 분할하는 방법을 결정하고, 상기 마스터 제어기(120, 150)는 상기 분할된 미디어 객체의 세그먼트를 상기 복수의 파일 분할 관리자로부터 선택된 파일 분할 관리자(130, 160)에 할당하는,
    미디어 객체를 송신하기 위한 장치.
  16. 제 15항에 있어서, 상기 파일 분할 관리자는 유저 데이터그램 프로토콜(UDP) 포트를 통해서 상기 세그먼트를 송신하는, 미디어 객체를 송신하기 위한 장치.
  17. 미디어 객체를 수신하기 위한 장치로서,
    마스터 제어기(120, 150)와;
    분할된 미디어 객체의 세그먼트를 수신하기 위한 복수의 파일 분할 관리자(130, 160)를 포함하고,
    여기서, 상기 마스터 제어기(120, 150)는 상기 분할된 미디어 객체의 상기 세그먼트를 재구성하는 방법을 결정하는,
    미디어 객체를 수신하기 위한 장치.
  18. 제 17항에 있어서, 상기 파일 분할 관리자는 유저 데이터그램 프로토콜(UDP) 포트를 통해 상기 세그먼트를 수신하는, 미디어 객체를 수신하기 위한 장치.
KR1020057017322A 2003-03-28 2004-03-29 미디어 기반 파일 송신 시스템 및 방법 KR101006703B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US45858803P 2003-03-28 2003-03-28
US60/458,588 2003-03-28

Publications (2)

Publication Number Publication Date
KR20050114659A true KR20050114659A (ko) 2005-12-06
KR101006703B1 KR101006703B1 (ko) 2011-01-10

Family

ID=33131809

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020057017322A KR101006703B1 (ko) 2003-03-28 2004-03-29 미디어 기반 파일 송신 시스템 및 방법

Country Status (9)

Country Link
US (1) US7831603B2 (ko)
EP (1) EP1609053B1 (ko)
JP (1) JP2006521643A (ko)
KR (1) KR101006703B1 (ko)
CN (1) CN1764897B (ko)
BR (1) BRPI0408622A (ko)
ES (1) ES2564802T3 (ko)
MX (1) MXPA05010227A (ko)
WO (1) WO2004088501A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101507032B1 (ko) * 2014-08-26 2015-04-01 계명대학교 산학협력단 스트리밍 미디어의 실시간 동기화 재생 시스템 및 방법

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050034151A1 (en) * 2003-08-08 2005-02-10 Maven Networks, Inc. System and method of integrating video content with interactive elements
EP3340511B1 (en) 2004-10-12 2022-11-30 TQ Delta, LLC Resource sharing in a telecommunications enviroment
US20060100845A1 (en) * 2004-11-08 2006-05-11 Mazzagatti Jane C Multiple stream real time data simulation adapted for a KStore data structure
EP1829315B1 (en) * 2004-11-30 2016-08-17 Telefonaktiebolaget LM Ericsson (publ) Method for delivering multimedia files
US7698451B2 (en) 2005-03-09 2010-04-13 Vudu, Inc. Method and apparatus for instant playback of a movie title
US8904463B2 (en) 2005-03-09 2014-12-02 Vudu, Inc. Live video broadcasting on distributed networks
US8219635B2 (en) 2005-03-09 2012-07-10 Vudu, Inc. Continuous data feeding in a distributed environment
US7937379B2 (en) 2005-03-09 2011-05-03 Vudu, Inc. Fragmentation of a file for instant access
US9176955B2 (en) * 2005-03-09 2015-11-03 Vvond, Inc. Method and apparatus for sharing media files among network nodes
US7191215B2 (en) 2005-03-09 2007-03-13 Marquee, Inc. Method and system for providing instantaneous media-on-demand services by transmitting contents in pieces from client machines
US20090019468A1 (en) * 2005-03-09 2009-01-15 Vvond, Llc Access control of media services over an open network
US20080022343A1 (en) 2006-07-24 2008-01-24 Vvond, Inc. Multiple audio streams
US8099511B1 (en) 2005-06-11 2012-01-17 Vudu, Inc. Instantaneous media-on-demand
US8134928B1 (en) 2005-12-15 2012-03-13 Nvidia Corporation Technique for identifying a failed network interface card within a team of network interface cards
EP2005674B1 (en) * 2006-04-12 2016-09-28 TQ Delta, LLC Packet retransmission and memory sharing
US20070288604A1 (en) * 2006-06-08 2007-12-13 Jeffrey Mark Achtermann Method for determining optimal number of connections in multi-connection download configuration
US8296812B1 (en) 2006-09-01 2012-10-23 Vudu, Inc. Streaming video using erasure encoding
CA2577030A1 (en) * 2007-01-31 2008-07-31 Unlimi-Tech Software Inc. Improved data transfer method, system and protocol
US8300647B2 (en) * 2007-05-18 2012-10-30 Nvidia Corporation Intelligent load balancing and failover of network traffic
US8432788B2 (en) * 2007-05-18 2013-04-30 Nvidia Corporation Intelligent failback in a load-balanced networking environment
CN101202882B (zh) * 2007-07-19 2010-09-15 深圳市同洲电子股份有限公司 一种媒体资源传输方法、系统及机顶盒
US8140953B1 (en) * 2007-10-26 2012-03-20 Adobe Systems Incorporated Flexible media catalog for multi-format project export
US20110276657A1 (en) * 2007-12-20 2011-11-10 Chalk Media Service Corp. Method and system for the delivery of large content assets to a mobile device over a mobile network
JP2009182458A (ja) * 2008-01-29 2009-08-13 Sony Corp 通信装置、通信システム、通信方法及びプログラム
US20090276791A1 (en) * 2008-05-01 2009-11-05 Microsoft Corporation Techniques for facilitating server callbacks
KR101777349B1 (ko) * 2010-10-26 2017-09-12 삼성전자주식회사 비디오 스트림 송수신 방법 및 장치
KR101739272B1 (ko) 2011-01-18 2017-05-24 삼성전자주식회사 멀티미디어 스트리밍 시스템에서 컨텐트의 저장 및 재생을 위한 장치 및 방법
KR20130046540A (ko) * 2011-10-28 2013-05-08 삼성에스디에스 주식회사 데이터 전송 장치 및 방법
CN103139241A (zh) * 2011-11-24 2013-06-05 腾讯科技(深圳)有限公司 网络资源文件的离线下载系统和方法
US9628542B2 (en) * 2012-08-24 2017-04-18 Akamai Technologies, Inc. Hybrid HTTP and UDP content delivery
EP2773078B1 (en) * 2013-03-01 2017-06-07 Alcatel-Lucent España Method, system and devices for multimedia content delivery using adaptive streaming
US9467255B2 (en) 2014-12-23 2016-10-11 Ibiquity Digital Corporation Systems and methods for digital radio broadcast with cross platform reception
WO2017184963A1 (en) 2016-04-22 2017-10-26 Robert Michael Dillon Over-the-air radio broadcast signal metadata
JP7068932B2 (ja) * 2018-06-01 2022-05-17 三菱電機株式会社 通信システム
US10880354B2 (en) * 2018-11-28 2020-12-29 Netflix, Inc. Techniques for encoding a media title while constraining quality variations
US11770441B2 (en) * 2019-06-07 2023-09-26 Qualcomm Incorporated File delivery failure feedback and application feedback

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3268875B2 (ja) 1993-02-26 2002-03-25 株式会社野村総合研究所 同報ファイル転送方法およびシステム
US6014706A (en) * 1997-01-30 2000-01-11 Microsoft Corporation Methods and apparatus for implementing control functions in a streamed video display system
US6292805B1 (en) 1997-10-15 2001-09-18 At&T Corp. System and method for processing object-based audiovisual information
US6453355B1 (en) * 1998-01-15 2002-09-17 Apple Computer, Inc. Method and apparatus for media data transmission
JPH11242640A (ja) * 1998-02-25 1999-09-07 Kdd Corp ファイル転送方法
US6460087B1 (en) 1998-02-25 2002-10-01 Kdd Corporation Method of transferring file
US6314466B1 (en) * 1998-10-06 2001-11-06 Realnetworks, Inc. System and method for providing random access to a multimedia object over a network
US7010801B1 (en) * 1999-06-11 2006-03-07 Scientific-Atlanta, Inc. Video on demand system with parameter-controlled bandwidth deallocation
US6801507B1 (en) * 1999-07-27 2004-10-05 Samsung Electronics Co., Ltd. Device discovery and configuration in a home network
AU2001228224A1 (en) * 2000-01-24 2001-07-31 The University Of Manitoba Method and system for segmented file transfer
WO2001056244A1 (fr) * 2000-01-26 2001-08-02 Sony Corporation Systeme de transmission de donnees
US20030018581A1 (en) * 2000-02-16 2003-01-23 Bratton Timothy R. Delivering media data to portable computing devices
AU2001276731A1 (en) * 2000-08-25 2002-03-04 Matsushita Electric Industrial Co., Ltd. Data transmission method and data relay method
US7143433B1 (en) * 2000-12-27 2006-11-28 Infovalve Computing Inc. Video distribution system using dynamic segmenting of video data files
US20020161911A1 (en) * 2001-04-19 2002-10-31 Thomas Pinckney Systems and methods for efficient memory allocation for streaming of multimedia files
US20030088876A1 (en) * 2001-11-08 2003-05-08 Liberate Technologies Video on demand gateway
US20030200548A1 (en) * 2001-12-27 2003-10-23 Paul Baran Method and apparatus for viewer control of digital TV program start time
US20030188317A1 (en) * 2002-03-28 2003-10-02 Liew William J. Advertisement system and methods for video-on-demand services
US8650601B2 (en) * 2002-11-26 2014-02-11 Concurrent Computer Corporation Video on demand management system
US20040158867A1 (en) * 2003-02-10 2004-08-12 General Instrument Corporation Methods, systems, and apparatus for determining transport stream channels for video-on-demand applications

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101507032B1 (ko) * 2014-08-26 2015-04-01 계명대학교 산학협력단 스트리밍 미디어의 실시간 동기화 재생 시스템 및 방법

Also Published As

Publication number Publication date
JP2006521643A (ja) 2006-09-21
CN1764897B (zh) 2010-11-10
BRPI0408622A (pt) 2006-03-07
EP1609053A4 (en) 2011-06-08
US7831603B2 (en) 2010-11-09
US20060242153A1 (en) 2006-10-26
KR101006703B1 (ko) 2011-01-10
EP1609053A1 (en) 2005-12-28
MXPA05010227A (es) 2006-03-28
EP1609053B1 (en) 2016-02-03
CN1764897A (zh) 2006-04-26
ES2564802T3 (es) 2016-03-29
WO2004088501A1 (en) 2004-10-14

Similar Documents

Publication Publication Date Title
KR101006703B1 (ko) 미디어 기반 파일 송신 시스템 및 방법
US7548995B2 (en) Strategies for disseminating media information using redundant network streams
Sitaram et al. Multimedia servers: applications, environments and design
US5633810A (en) Method and apparatus for distributing network bandwidth on a media server
KR100926007B1 (ko) 스트리밍 및 제어 처리를 위한 별도의 구성을 이용한미디어 데이터 프로세싱
US5805804A (en) Method and apparatus for scalable, high bandwidth storage retrieval and transportation of multimedia data on a network
WO1996017306A9 (en) Media server
US9167211B2 (en) Method for transmitting an IPTV streaming service by P2P transmission, and method for receiving an IPTV streaming service by P2P transmission
JP5738865B2 (ja) Mpeg−2ts多重化マルチメディアストリームのエレメンタリパケットの選択による、mpeg−2ts多重化マルチメディアストリームの配信
JP4373012B2 (ja) データ伝送
WO2006083664A2 (en) Customer associated profile for accessing audio and video media objects
US20020026501A1 (en) Decreased idle time and constant bandwidth data-on-demand broadcast delivery matrices
US20100332675A1 (en) Method and Apparatus for Obtaining Media Over a Communications Network
US20030210711A1 (en) Data transfer method and apparatus
WO2018121584A1 (zh) 一种数据流传输方法、装置、相关设备及存储介质
WO2003096646A1 (en) File transfer method and apparatus
Sheu et al. A scalable cost-effective video broadcasting system for on-demand video services
Boutaba et al. Distributed video production: Tasks, architecture and qos provisioning
WO2002039744A1 (en) Decreased idle time and constant bandwidth data-on-demand broadcast delivery matrices
KR20190021300A (ko) 복합 네트워크에서 멀티미디어 데이터를 전송하기 위한 장치 및 그 방법
Teixeira et al. A Free Software Streaming Video Application based on MMTP
Fernández et al. Video forwarding techniques for mixed wired and wireless networks
Reddy et al. A Nationwide Experimental Multi-Gigabit Network
Zimmermann et al. Retransmission-based error control for scalable streaming media systems
Veeravalli et al. Distributed Technologies for Multimedia Retrieval Over Networks

Legal Events

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

Payment date: 20131202

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20141201

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20151201

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee