KR20130138316A - 데이터 파일 송신 관리 - Google Patents

데이터 파일 송신 관리 Download PDF

Info

Publication number
KR20130138316A
KR20130138316A KR1020137028519A KR20137028519A KR20130138316A KR 20130138316 A KR20130138316 A KR 20130138316A KR 1020137028519 A KR1020137028519 A KR 1020137028519A KR 20137028519 A KR20137028519 A KR 20137028519A KR 20130138316 A KR20130138316 A KR 20130138316A
Authority
KR
South Korea
Prior art keywords
user
segment
segments
file
users
Prior art date
Application number
KR1020137028519A
Other languages
English (en)
Other versions
KR101495560B1 (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 KR20130138316A publication Critical patent/KR20130138316A/ko
Application granted granted Critical
Publication of KR101495560B1 publication Critical patent/KR101495560B1/ko

Links

Images

Classifications

    • 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
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • H04L67/1076Resource dissemination mechanisms or network resource keeping policies for optimal resource availability in the overlay network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • H04L67/1078Resource delivery mechanisms
    • H04L67/108Resource delivery mechanisms characterised by resources being split in blocks or fragments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1087Peer-to-peer [P2P] networks using cross-functional networking aspects
    • H04L67/1091Interfacing with client-server systems or between P2P systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • H04L67/5651Reducing the amount or size of exchanged application data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • H04L67/5681Pre-fetching or pre-delivering data based on network characteristics
    • 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/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • 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/21Server components or server architectures
    • H04N21/222Secondary servers, e.g. proxy server, cable television Head-end
    • H04N21/2225Local VOD servers
    • 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/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47202End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting content on demand, e.g. video on demand
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/632Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing using a connection between clients on a wide area network, e.g. setting up a peer-to-peer communication via Internet for retrieving video segments from the hard-disk of other client devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments

Abstract

사용자들로의 데이터 파일들의 송신을 관리하기 위한 방법에서, 제 1 파일은 복수의 제 1 세그먼트들로 분할되고 제 2 파일은 복수의 제 2 세그먼트들로 분할된다. 제 1 세그먼트가 제 1 사용자에게 전송되고 상이한 제 1 세그먼트가 제 2 사용자에게 전송된다. 제 2 세그먼트가 상기 제 1 사용자에게 전송되고 상이한 제 2 세그먼트가 상기 제 2 사용자에게 전송된다. 결합된 세그먼트를 생성하기 위해 상기 제 2 사용자에게 전송된 세그먼트의 적어도 일부와 상기 제 1 사용자에게 전송된 세그먼트의 적어도 일부를 결합하고, 상기 결합된 세그먼트는 결합 전 세그먼트들의 상기 적어도 일부들의 총 사이즈보다 작은 사이즈이다. 상기 결합된 세그먼트는 각각의 사용자에 대해 상기 결합된 세그먼트 및 세그먼트의 적어도 일부를 사용하여 세그먼트를 복구하기 위해 상기 제 1 사용자 및 상기 제 2 사용자에게 송신된다.

Description

데이터 파일 송신 관리{MANAGING DATA FILE TRANSMISSION}
본 발명은 사용자들로의 데이터 파일들의 송신을 관리하기 위한 방법 및 장치에 관한 것이고, 특히, 사용자에게 국부적으로 캐시되는 데이터 파일들의 송신에 관한 것이지만, 이로 제한되지 않는다.
서버는 예를 들어, 인터넷 또는 일부 다른 네트워크일 수 있는 네트워크를 통해 사용자에게 전송될 데이터 파일들을 유지할 수 있다. 상기 데이터 파일들은 미디어 콘텐트 파일들 또는 일부 다른 유형일 수 있고, 사용자가 이들을 요청할 때 또는 상기 콘텐트 생산자 또는 제공자가 예를 들어, 이들을 분배하고 싶어할 때 상기 사용자에게 전송된다. 사용자가 데이터 파일로의 즉시 액세스를 요구하지 않거나 나중의 액세스를 위해 이용가능하게 유지하기를 원한다면, 상기 데이터 파일은 상기 사용자에 대해 국부적인 캐시 메모리에 저장될 수 있다. 예를 들어, 상기 캐시 메모리는 상기 사용자 장비에 포함된 하드 드라이브일 수 있고 또는 상기 캐시 메모리는 예를 들어, 상기 서버보다 네트워크의 에지에 더 가깝게 위치됨으로써 상기 사용자에 의해 용이하게 액세스가능하게 별도로 제공되고 배치될 수 있다. 상기 사용자가 캐시된 파일을 필요로 하면, 이는 감소된 또는 네트워크 자원들이 없는 캐시 메모리로부터 획득될 수 있다.
데이터 송신은 네트워크 자원들이 고 용량 및/또는 저 비용일 때 캐시될 데이터 파일들을 송신함으로써 효율적으로 관리될 수 있다. 예를 들어, 데이터 파일은 WiFi 네트워크가 이용가능하거나 상기 사용자가 저-트래픽 영역에 있거나 저-트래픽 시간 기간일 때 전송될 수 있다.
본 발명의 제 1 양태에 따라, 사용자들로의 데이터 파일들의 송신을 관리하기 위한 방법에서, 제 1 파일은 복수의 제 1 세그먼트들로 분할되고 제 2 파일은 복수의 제 2 세그먼트들로 분할된다. 제 1 세그먼트가 제 1 사용자에게 전송되고 상이한 제 1 세그먼트가 제 2 사용자에게 전송된다. 제 2 세그먼트가 상기 제 1 사용자에게 전송되고 상이한 제 2 세그먼트가 상기 제 2 사용자에게 전송된다. 결합된 세그먼트를 생성하기 위해 상기 제 2 사용자에게 전송된 세그먼트의 적어도 일부와 상기 제 1 사용자에게 전송된 세그먼트의 적어도 일부를 결합하고, 상기 결합된 세그먼트는 결합 전 세그먼트들의 상기 적어도 일부들의 총 사이즈보다 작은 사이즈이다. 상기 결합된 세그먼트는 각각의 사용자에 대해 상기 결합된 세그먼트 및 세그먼트의 적어도 일부를 사용하여 세그먼트를 복구하기 위해 상기 제 1 사용자 및 상기 제 2 사용자에게 송신된다.
결합 전의 세그먼트들의 적어도 일부들의 총 사이즈에 비해 더 작은 사이즈의 결합된 세그먼트는 상기 결합된 세그먼트가 상기 사용자들에 대해 국부적인 캐시 또는 캐시들에 캐시된다면 더 적은 공간을 요구한다는 것을 의미한다. 부가적으로, 상기 결합된 세그먼트가 더 작은 사이즈여서, 상기 세그먼트들이 결합되지 않은 형태로 개별적으로 전송될 때보다는 송신을 위해 더 적은 네트워크 자원들을 요구한다. 이는 사용자에 대해 국부적인 메모리 캐시 또는 캐시들에 세그먼트들이 캐시되지 않는 배치들에서도 유익하다.
상기 사용자 또는 사용자들은 네트워크의 임의의 노드일 수 있다. 예를 들어, 무선 네트워크에서, 사용자는 라우터 또는 최종 사용자 또는 일부 다른 네트워크 노드일 수 있다.
본 발명에 따른 방법은 무선, 유선 또는 다른 유형들의 네트워크에 적용될 수 있고 하나의 특정한 기술 유형으로 제한되지 않는다.
f 개의 파일들 및 K 명의 사용자들이 있고, 각각의 파일이 2 내지 K 제곱 개의 세그먼트들로 파티셔닝(partitioning)되고, 각각의 사용자들의 서브세트에 대해, 상기 서브세트의 모든 사용자들에 저장되는 세그먼트를 포함하고, 본 발명에 따른 방법이 적용될 수 있다.
일 실시예에서, 상기 제 1 사용자에게 전송된 상기 제 1 및 제 2 세그먼트들은 상기 제 1 사용자에게 국부적인 제 1 캐시 메모리에 캐시될 수 있다. 유사하게, 상기 제 2 사용자에게 전송된 상기 제 1 및 제 2 세그먼트들은 상기 제 2 사용자에게 국부적인 제 2 캐시 메모리에 캐시될 수 있다. 따라서, 캐시 메모리는 상기 캐시 메모리가 완벽한 파일들을 저장하기에는 불충분한 사이즈일 때 유리할 수 있는, 상기 제 1 파일의 일부 및 상기 제 2 파일의 일부만을 저장하도록 배열될 수 있다. 나중의 시간에, 하나 또는 두 사용자들이 상기 제 1 파일 또는 상기 제 2 파일에 액세스하기를 원할 때, 이들이 이미 일부 세그먼트들에 국부적으로 액세스함에 따라 상기 전체 파일이 이들에게 전송될 필요는 없다. 따라서, 나머지 세그먼트들이 비교적 비싼 시간에 또는 높은 네트워크 부하들 동안 전송되어야 하는 일부 경우들에서도, 그 때 전체 파일이 전송될 필요가 없기 때문에, 상기 파일을 전송하기 위한 전체 비용들은 감소될 수 있다. 부가적으로, 상기 결합된 세그먼트는 효과적인 파일 송신 관리를 제공할 수 있는, 기여하는 세그먼트들의 총 사이즈보다 작다.
일 실시예에서, 상기 제 1 사용자에게 전송된 상기 세그먼트의 적어도 일부는 유한 필드의 부가를 사용함으로써 상기 제 2 사용자에게 전송된 세그먼트의 적어도 일부와 결합된다. 일 실시예에서, 상기 유한 필드는 이진 필드이다.
일 방법에서, 상기 제 1 및 제 2 사용자들에게 전송된 상기 제 1 및 제 2 세그먼트들은 상기 결합된 세그먼트가 상기 제 1 및 제 2 사용자들에게 전송되기 전에 전송된다. 그러나, 다른 실시예에서, 상기 데이터는 상이한 순서로 전송된다.
일 실시예에서, 세그먼트는 제 1 및 제 2 부분들로 분할되고, 상기 제 1 부분은 결합된 세그먼트에 포함되고 상기 제 2 부분은 상기 제 1 및 제 2 사용자들에게 송신된다. 상기 제 2 부분은 상기 결합된 세그먼트로서 동시에 송신되거나 별도의 송신으로서 송신될 수 있다.
본 발명의 제 2 양태에 따라, 사용자들로의 데이터 파일들의 송신을 관리하기 위한 데이터 송신 관리자는, 제 1 파일을 복수의 제 1 세그먼트들로 분할하고 제 2 파일을 복수의 제 2 세그먼트들로 분할하기 위한 분할기; 제 1 사용자에게 제 1 세그먼트를 전송하고, 제 2 사용자에게 상이한 제 1 세그먼트를 전송하고, 상기 제 1 사용자에게 제 2 세그먼트를 전송하고, 상기 제 2 사용자에게 상이한 제 2 세그먼트를 전송하기 위한 송신기 장치; 및 결합된 세그먼트를 생성하기 위해 상기 제 2 사용자에게 전송된 세그먼트의 적어도 일부와 상기 제 1 사용자에게 전송된 세그먼트의 적어도 일부를 결합하기 위한 결합기로서, 상기 결합된 세그먼트는 결합 전 세그먼트들의 상기 적어도 일부들의 총 사이즈보다 작은 사이즈인, 상기 결합기를 포함하고, 상기 송신기 장치는 각각의 상기 제 1 및 상기 제 2 사용자들에 대해 상기 결합된 세그먼트 및 세그먼트의 적어도 일부를 사용하여 세그먼트를 복구하기 위해 상기 결합된 세그먼트를 상기 제 1 사용자 및 상기 제 2 사용자에게 전송하도록 동작한다.
도 1은 본 발명에 따른 방법의 흐름도를 개략적으로 도시한 도면.
도 2는 송신을 도시하는 개략적인 그래프.
도 3은 도 1의 방법을 구현하기 위한 장치를 개략적으로 도시한 도면.
본 발명의 일부 실시예들이 단지 예로서, 첨부된 도면들을 참조하여 이제 설명될 것이다.
제 1 실시예에서, 서버로부터 이용가능한 제 1 파일 A 및 제 2 파일 B가 있다고 가정하고, 각각의 파일은 1MB의 사이즈를 갖는다. 제 1 사용자 U1 및 제 2 사용자 U2가 있고, 각각의 사용자는 연관된 로컬 캐시 메모리 M1 및 M2를 각각 갖고, M1 및 M2는 각각 1MB이다. 이들 두 사용자들 U1 및 U2의 히스토리가 동일한 확률을 갖는 파일 A 및 파일 B를 각각 요구할 것이라는 것을 나타낸다고 가정된다.
이러한 캐싱 스킴(scheme)에서, 값비싼 네트워크들에서 평균 0.5MB로 브로드캐스팅될 필요가 있다. 게다가, 피크 레이트는 0.5MB이다.
도 1을 참조하여, 1에서, 상기 제 1 및 제 2 파일들은 몇 개의 세그먼트들로 분할된다. 파일 A는 두 개의 동일한 사이즈의 세그먼트들 A1 및 A2로 분할되고, 각각의 세그먼트는 0.5MB이고, A=(A1, A2)이다.
유사하게, 파일 B는 두 개의 동일한 사이즈의 세그먼트들 B1 및 B2로 분할되고, 각각의 세그먼트는 0.5MB이고, B=(B1, B2)이다.
2에서, 세그먼트들 A1 및 B1은 상기 제 1 사용자 U1에게 송신되고, 3에서, 연관된 캐시 메모리 M1에 저장된다. 또한, A2 및 B2가 상기 제 2 사용자 U2에게 송신되고 상기 연관된 캐시 메모리 M2에 저장된다. 상기 캐싱 전략은 표 1에 요약되고 확률은 표 2에 요약된다.
Figure pct00001
Figure pct00002
따라서, 각각의 사용자가 각각의 파일의 일부를 갖는다.
나중에, 예를 들어, 상기 제 1 사용자 U1이 파일 A에 액세스하기를 원하고 상기 제 2 사용자 U2가 파일 B를 요구하면, 누구도 완벽한 파일을 제공하기 위해 캐시된 충분한 세그먼트들을 갖지 못한다. 상기 사용자들은 4에서 그들의 요구를 서버로 송신한다.
5에서, 상기 서버는 결합된 세그먼트 A2+B1을 브로드캐스팅하기 위해 상기 송신기에 대해 배열되고, 여기서, +는 상기 결합된 세그먼트를 생성하기 위한 유한 필드에서의 합을 나타낸다. 이 예에서, 결합은 이진 필드에서 수행되고 따라서 +는 단순히 비트-단위 XOR 연산이다. 상기 결합된 세그먼트 A2+B1은 0.5MB 사이즈를 갖는다. 이를 세그먼트 A2에 대해 0.5MB 및 세그먼트 B1에 대해 0.5MB의 사이즈로 비교하면, 즉 총 1MB이다.
다음 단계에서, 6에 도시된 바와 같이, 상기 제 1 사용자 U1은 A2+B1을 수신하고 자신의 캐시 메모리 M1에 B1을 이미 가지고 있다. 따라서, 제 1 사용자 U1은 (A2+B1)-B1 연산에 의해 A2를 복구할 수 있다. 상기 제 1 사용자 U1은 또한 캐시 메모리 M1에 A1을 갖는다. 따라서, 상기 제 1 사용자 U1은 A1 및 A2 모두를 갖고 상기 요청된 파일 A를 재구성할 수 있다.
상기 제 2 사용자 U2는 또한 상기 송신기에 의해 브로드캐스팅된 A2+B1을 수신한다. 상기 제 2 사용자 U2는 이미 A2를 자신의 캐시 메모리에 갖고, 따라서 (A2+B1)-A2 연산에 의해 B1을 복구할 수 있다. 상기 제 2 사용자 U2는 이미 B2를 캐시 메모리 M2에 갖는다. 따라서, B1 및 B2 모두가 상기 파일 B를 재구성하기 위해 필요로 하는 상기 제 2 사용자 U2에게 이용가능하다.
다른 시나리오에서, 시작 포인트는 표 1에 도시된다고 가정하고, 상기 제 1 및 제 2 사용자들이 모두 파일 A를 요구한다고 가정한다. 이 경우, 상기 송신기는 A2+A1을 브로드캐스팅하고, 여기서, +는 다시 이진 필드에서 수행되고 비트-단위 XOR 연산인 조합을 나타낸다. 상기 조합된 세그먼트 A2+A1은 세그먼트 A2에 대해 0.5MB 및 세그먼트 A1에 대해 0.5MB의 사이즈에 비교하여 0.5MB의 사이즈를 갖고, 즉, 총 1MB이다.
따라서, 상기 제 1 사용자 U1은 A2+A1을 수신하고 이미 캐시 메모리에 A1을 갖는다. 따라서, (A2+A1)-A1에 의해 A2를 복구할 수 있다. 따라서, 상기 제 1 사용자 U1은 세그먼트들 A1 및 A2 모두를 갖고 따라서 파일 A를 재구성할 수 있다.
상기 제 2 사용자 U2는 또한 상기 브로드캐스팅된 A2+A1을 수신하고 이미 캐시 메모리 M2에 A2를 갖는다. 따라서, (A2+A1)-A2에 의해 A1을 복구할 수 있다. 따라서, A1 및 A2를 모두 가질 수 있고 따라서 파일 A를 재구성할 수 있다.
다른 경우들에 대해, 상기 브로드캐스팅 전략 및 복구 방법이 또한 이하의 표 3에 도시된다. 각각의 사용자가 어떤 파일을 요청했는지 중요하지 않고, 상기 송신기는 단지 0.5MB만 브로드캐스팅할 필요가 있다는 것을 알 수 있다. 따라서, 상기 송신기가 브로드캐스팅하는 데이터의 평균 레이트는 0.5MB이다.
Figure pct00003
본 실시예에서, 상기 캐싱 스킴은 최적화되고 상기 네트워크의 평균 부하 또는 최대 부하는 최소화된다. 상기에 주어진 간단한 예에서, 상기 캐싱 스킴은 평균 부하를 50%까지 감소시킬 수 있고 피크 부하는 100%이다.
도 2는 사이즈 F의 두 개의 파일들 및 각각 캐시 사이즈 M을 갖는 두 사용자들에 대한 정규화된 캐시-메모리 사이즈에 대해 정규화된 평균 송신 레이트를 도시한다. 또한, 각각의 사용자가 상기 파일들 중 하나를 필요로 하는 확률이 같을 것이다.
다른 실시예에서, 각각 M1 및 M2의 이용가능한 캐싱 메모리 사이즈를 갖는 제 1 및 제 2 사용자들(사용자 1 및 사용자 2)이 있다고 가정된다. 또한, 상기 서버는 각각 FA 및 FB의 사이즈들을 갖는 두 개의 파일들 A 및 B를 갖는다고 가정한다, 즉,
|A|=FA
|B|=FB
상기 사용자들은 다음의 표 4에 열거된 어떤 확률들을 갖는 파일들 중 하나를 필요로 한다:
Figure pct00004
각각의 파일은,
|A0|= x0, |A1|= x1, |A2|= x2, |A12|= x12,
|B0|= y0, |B1|= y1, |B2|= y2, |B12|= y12의 사이즈를 갖는
A={A0, A1, A2, A12}
B={B0, B1, B2, B12}를 제공하기 위해, 같을 필요가 없는, 5 개의 부분들로 분할된다.
따라서,
x0+ x1+ x2+ x12 = FA
y0+ y1+ y2+ y12 = FB
A1 및 B1로 표기된 파일들의 부분들은 사용자 1 메모리에 캐시된다.
A2 및 B2로 표기된 파일들의 부분들은 사용자 2 메모리에 캐시된다.
A12 및 B12로 표기된 파일들의 부분들은 두 사용자들의 메모리들에 캐시된다.
A0 및 B0으로 표기된 파일들의 부분들은 어떤 메모리들에도 캐시되지 않는다.
따라서,
x1+ y1+ x12+ y12 <= M1
x2+ y2+ x12+ y12 <= M2
제 1 시나리오에서, 사용자 1은 파일 A를 요청하고 사용자 2는 파일 B를 요청한다. 따라서,
사용자 1은 상기 서버에서만 이용가능한 A0을 요청한다.
사용자 2는 상기 서버에서만 이용가능한 B0을 요청한다.
사용자 1은 이미 A1 및 A12를 가졌다.
사용자 2는 이미 B1 및 B12를 가졌다.
사용자 1은 A2를 원하지만 사용자 2는 이를 자신의 캐싱 메모리에 가졌다.
사용자 2는 B1을 원하지만 사용자 1은 이를 자신의 캐싱 메모리에 가졌다.
따라서, 상기 서버는 사용자들 1 및 2에게 A0 및 B0 모두를 전송해야 한다.
|A2| > |B1|을 가정하면, 상기 서버는 세그먼트 A2를 A2U 및 A2L로 표기된 두 부분들, 즉, A2={A2U, A2L}로 파티셔닝하고, 여기서, |A2U|=|B1|. 그 후 상기 서버는 결합된 세그먼트 A2U + B1을 전송하고, 여기서, +는 이진 필드 또는 임의의 다른 유한 필드의 합산이고, 또한 A2L을 전송한다. 다음을 주의한다:
|A2U + B1| + |A2L|=|A2| = max{|A2|, |B1|}
여기서, max{|A2|, |B1|}는 A2의 사이즈 및 B1의 사이즈의 최대값이다.
그 후 사용자 1은 A2={A2U, A2L}를 복구하기 위해, A2U + B1, A2L, 및 B1을 사용할 수 있다. 또한, 사용자 2는 B1을 복구하기 위해, A2U + B1 및 A2를 사용할 수 있다.
한편, |A2| < |B1|라면, 상기 서버는 세그먼트 B1을 B1U 및 B1L로 표기된 두 부분들, 즉, B1={B1U, B1L}로 파티셔닝하고, 여기서, |B1U|=|A2|. 그 후 상기 서버는 결합된 세그먼트 B1U + A2를 전송하고, 또한 B1L을 전송하고, 다시 +는 이진 필드 또는 임의의 다른 유한 필드들의 합산이다. 다음을 주의한다:
|B1U + A2| + |B1L|=|B1| = max{|A2|, |B1|}
그 후 사용자 2는 B1={B1U, B1L}를 복구하기 위해, B1U + A1, B1L, A2를 사용할 수 있다. 또한, 사용자 1은 A2를 복구하기 위해, B1U + A2 및 B1을 사용할 수 있다.
그 후 각각의 사용자는 자신에 의해 요청된 파일을 재구성하기 위해 필요한 세그먼트들을 갖는다.
제 2 시나리오에서, 사용자 1 및 사용자 2는 모두 파일 A를 요청한다. 주의:
사용자들 1 및 2는 상기 서버 메모리에서만 이용가능한 A0을 원한다.
두 사용자들 1 및 2는 이미 A12를 가졌다.
사용자 1은 A2를 원하지만 사용자 2는 이를 자신의 캐싱 메모리에 가졌다.
사용자 2는 A1을 원하지만 사용자 1은 이를 자신의 캐싱 메모리에 가졌다.
따라서, 상기 서버는 A0을 사용자들 1 및 2에게 전송해야 한다.
|A2| > |A1|을 가정하면, 상기 서버는 세그먼트 A2를 A2U 및 A2L로 표기된 두 부분들, 즉, A2={A2U, A2L}로 파티셔닝하고, 여기서, |A2U|=|A1|. 그 후 상기 서버는 결합된 세그먼트 A2U + A1 및 A2L을 전송하고, 여기서, +는 이진 필드 또는 임의의 다른 유한 필드들의 합산이다. 다음을 주의한다:
|A2U + A1| + |A2L|=|A2| = max{|A2|, |A1|}
그 후 사용자 1은 A2={A2U, A2L}를 복구하기 위해, A2U + A1, A2L, 및 A1을 사용할 수 있다. 또한, 사용자 2는 A1을 복구하기 위해, A2U + A1 및 A2를 사용할 수 있다.
한편, |A2| < |A1|라면, 상기 서버는 세그먼트 A1을 A1U 및 A1L로 표기된 두 부분들, 즉, A1={A1U, A1L}로 파티셔닝하고, 여기서, |A1U|=|A2|. 그 후 상기 서버는 결합된 세그먼트 A1U + A2를 전송하고, 여기서, +는 이진 필드 또는 임의의 다른 유한 필드들의 합산이다. 다음을 주의한다:
|A1U + A2| + |A1L|=|B1| = max{|A2|, |B1|}
그 후 사용자 2는 A1={A1U, A1L}를 복구하기 위해, A1U + A1, A1L, 및 A2를 사용할 수 있다. 또한, 사용자 1은 A2를 복구하기 위해, A1U + A2 및 A1을 사용할 수 있다.
이 전략을 따라, 상이한 경우들에 요청된 레이트가 이하의 표 5에 도시된다.
Figure pct00005
따라서, 평균 레이트는 다음과 같다:
pAA(x0+max{x1, x2}) + pAB(x0+y0+max{x2, y1}) + pBA(x0+y0+max{x1, y2}) + pBB(y0+max{y1, y2})
따라서, x0, x1, x2, x12, y0, y1, y2, 및 y12는 평균 레이트를 최소화하기 위해 선택될 수 있다:
x0+ x1+ x2+ x12 = FA
y0+ y1+ y2+ y12 = FB
x1+ y1+ x12+ y12 <= M1
x2+ y2+ x12+ y12 <= M2
x0, x1, x2, x12, y0, y1, y2, 및 y12 => 0을 조건으로,
Min pAA(x0+max{x1, x2}) + pAB(x0+y0+max{x2, y1}) + pBA(x0+y0+max{x1, y2}) + pBB(y0+max{y1, y2})
최대 레이트가 주요 문제라면,
x0+ x1+ x2+ x12 = FA
y0+ y1+ y2+ y12 = FB
x1+ y1+ x12+ y12 <= M1
x2+ y2+ x12+ y12 <= M2
x0, x1, x2, x12, y0, y1, y2, 및 y12 => 0 을 조건으로,
다음의 최적화:
Min Max [pAA(x0+max{x1, x2}), pAB(x0+y0+max{x2, y1}), pBA(x0+y0+max{x1, y2}), pBB(y0+max{y1, y2})]가 사용될 수 있다.
다른 양태들이 상기 방법을 개선하기 위해 사용될 수 있다. 예를 들어, 캐싱이 상당한 비용들을 가지면, 대응하는 비용이 상기 데이터 레이트의 최적화의 목표 기능에 부가될 수 있다. 예를 들어, 두 사용자들로의 데이터 전송이 하나의 사용자로의 데이터 전송과 다른 비용들을 가지면, 상기 목표 기능은 대응하여 수정될 수 있다. 또한, 하나의 사용자가 이미 상기 파일들의 일부 부분들을 가지면, 이는 상기 최적화에서 이용될 수 있다. 또한, 사용자들은 그들의 메모리에 캐시되어야 하는 파일의 세그먼트들에 어떤 우선권들을 가질 수 있다. 이러한 우선권들은 상기 최적화에서 고려될 수 있다. 상기 사용자들로의 데이터의 송신을 위해 사용자들의 우선권들이 고려될 수 있다. 예를 들어, 사용자가 특정한 순서로 파일을 복구할 수 있게 하는 방식으로 파일들이 송신될 수 있다.
상기 방법은 임의의 수의 파일들 및 임의의 수의 사용자들로 확장될 수 있다. 예를 들어, 3명의 사용자들(사용자 1, 사용자 2, 및 사용자 3)과 3 개의 파일들(A, B, 및 C)이 있다고 가정한다.
각각의 파일은 다음과 같이 8 개의 세그먼트들로 파티셔닝된다:
A={A0, A1, A2, A3, A12, A13, A23, A123}
B={B0, B1, B2, B3, B12, B13, B23, B123}
C={C0, C1, C2, C3, C12, C13, C23, C123}
그 후, 상기 세그먼트들은 다음과 같이 저장된다:
X=A,B,C에 대해, 세그먼트들 X0은 어떤 사용자들에게도 없다.
i=1,2,3 및 X=A,B,C에 대해, 세그먼트들 Xi는 사용자 i에 있다.
i, j=1,2,3 및 X=A,B,C에 대해, 세그먼트들 Xij는 사용자들 i 및 j에 있다.
X=A,B,C에 대해, 세그먼트들 X123은 모든 사용자들 i 및 j에 있다.
간략화를 위해, 본 예에서 i=1,2,3 및 X=A,B,C에 대한 세그먼트들 Xi는 동일한 사이즈를 갖고, 또한 i, j=1,2,3 및 X=A,B,C에 대한, Xij도 동일한 사이즈를 갖는다고 가정된다. 이러한 가정은 단지 본 예에 대한 것이고, 일반적인 요건은 아니다.
그 후, 예를 들어, 사용자 1이 A를 원하고, 사용자 2가 B를 원하고, 사용자 3이 C를 원한다면, 상기 송신기는 다음을 전송한다.
A0
B0
C0
A2+B1
A3+C1
B3+C2
A23+B13+C12
그러면 각각의 사용자가 원하는 파일을 검출하기 위해 충분한 세그먼트들 및 결합된 세그먼트들을 수신한다.
예를 들어, 모든 사용자들이 A를 원하면, 상기 송신기는 다음을 전송한다.
A0
e1A1+e2A2+e3A3
g1A1+g2A2+g3A3
q1A12+q2A13+q3A23
상기 연산들은 임의의 충분히 큰 유한-필드이고, ek, gj, qi는 동일한 필드에 속한다. 그러면 각각의 사용자는 전체 A를 해결하기에 충분한 수식들을 갖는다.
상기 세그먼트들의 사이즈는 상기에 설명된 바와 같이 최적화될 수 있다. 상기 파일들의 사이즈가 동일할 필요는 없다.
f 개의 파일들과 K 명의 사용자들이 있다면, 각각의 파일은 2 내지 K의 제곱 세그먼트들로 파티셔닝되고, 각각의 사용자들의 서브세트에 대해, 상기 서브세트의 모든 사용자들에게 저장된 세그먼트가 있다. 이들 세그먼트들의 일부의 사이즈는 0일 수 있다.
도 3을 참조하면, 도 1을 참조하여 설명된 실시예를 구현하기 위한 데이터 송신 관리자(7)는 데이터 파일들(A 및 B)을 유지하는 콘텐트 저장소(8)를 포함한다. 분할기(9)는 상기 데이터 파일들(A 및 B)을 획득하기 위해 상기 콘텐트 저장소(8)에 액세스하고 상기 파일들을 세그먼트들로 분할한다. 상기 세그먼트들의 일부는 네트워크 용량이 크고 및/또는 요구된 자원들이 비싸지 않을 때 사용자들(10 및 11)에게 송신된다. 상기 사용자들(10 및 11)에게 처음에 송신된 이들 세그먼트들은 송신된 세그먼트들의 기록을 또한 유지하는 제어 프로세서(12)에 의해 선택된다. 상기 제어 프로세서(12)는 어느 세그먼트가 어느 사용자에게 송신될지를 서버(13)에 지시한다. 상기 서버(13)는 관련된 세그먼트들을 획득하고 이들을 송신기(14)를 통해 네트워크 상의 상기 사용자들(10 및 11)에게 전송한다. 상기 사용자들(10 및 11)은 각각 연관된 메모리 캐시(15 및 16)를 갖고, 이들은 서버(11)로부터 자신들에게 전송된 데이터 세그먼트들을 각각 저장한다. 각각의 사용자는 파일 A로부터 및 또한 파일 B로부터 세그먼트들을 수신한다.
상기 사용자들(10 및 11)이 완벽한 파일 A 또는 B를 갖길 원할 때, 이들은 상기 네트워크 상의 상기 서버(13)로 메시지를 전송한다. 상기 서버(13) 및 제어 프로세서(12)는 상기 사용자 요청들을 충족하기 위해 어떤 결합된 세그먼트가 요구되는 지를 결정한다. 상기 결합된 세그먼트는 파일 세그먼트들로부터 결합기(17)에 의해 생성되고 서버(13)를 통해 상기 사용자들(10 및 11)에게 전달된다. 그러면 상기 사용자들(10 및 11)은 이전에 송신된 세그먼트들 및 상기 결합된 세그먼트를 사용하여 완벽한 파일들을 재구성할 수 있다.
도 3에 도시된 장치는 상기에 언급된 것과 다른 방법들을 구현하기 위해 더 복잡한 데이터 파일 전달을 수행하도록 조정될 수 있다.
"프로세서들"로 라벨링된 임의의 기능 블록들을 포함하는, 상기 도면에 도시된 다양한 소자들의 기능들은 전용 하드웨어뿐만 아니라 적절한 소프트웨어와 연관된 소프트웨어를 실행할 수 있는 하드웨어의 사용을 통해 제공될 수 있다. 프로세서에 의해 제공될 때, 상기 기능들은 단일 전용 프로세서에 의해, 단일 공유 프로세서에 의해, 또는 일부가 공유될 수 있는 복수의 개별 프로세서들에 의해, 제공될 수 있다. 또한, 용어 "프로세서"의 명시적인 사용은 소프트웨어를 실행할 수 있는 하드웨어를 배타적으로 참조하는 것으로 해석되지 않아야 하고, 제한없이, DSP(digital signal processor) 하드웨어, 네트워크 프로세서, ASIC(application specific integrated circuit), FPGA(field programmable gate array), 소프트웨어를 저장하기 위한 ROM(read only memory), RAM(random access memory), 및 비휘발성 기억장치를 암시적으로 포함할 수 있다. 종래의 및/또는 커스텀(custom)된 다른 하드웨어가 또한 포함될 수 있다.
본 발명은 본원의 정신 또는 본질적인 특징들로부터 벗어나지 않고 다른 구체적인 형태들로 구현될 수 있다. 설명된 실시예들은 모든 면에서 단지 예시적이고 제한적이지 않은 것으로 고려된다. 따라서, 본 발명의 범위는 전술한 설명에 의해서가 아니라 첨부된 청구항들로 나타낸다. 상기 청구항들의 등가의 의미 및 범위에 있는 모든 변화들은 이들의 범위 내에 포괄된다.

Claims (10)

  1. 사용자들로의 데이터 파일들의 송신을 관리하기 위한 방법에 있어서,
    제 1 파일을 복수의 제 1 세그먼트들로 분할하는 단계;
    제 2 파일을 복수의 제 2 세그먼트들로 분할하는 단계;
    제 1 사용자에게 제 1 세그먼트로 전송하고, 제 2 사용자에게 상이한 제 1 세그먼트를 전송하는 단계;
    상기 제 1 사용자에게 제 2 세그먼트를 전송하고, 상기 제 2 사용자에게 상이한 제 2 세그먼트를 전송하는 단계;
    결합된 세그먼트를 생성하기 위해 상기 제 2 사용자에게 전송된 세그먼트의 적어도 일부와 상기 제 1 사용자에게 전송된 세그먼트의 적어도 일부를 결합하는 단계로서, 상기 결합된 세그먼트는 결합 전 세그먼트들의 상기 적어도 일부들의 총 사이즈보다 작은 사이즈인, 상기 결합 단계; 및
    각각의 사용자에 대해 상기 결합된 세그먼트 및 세그먼트의 적어도 일부를 사용하여 세그먼트를 복구하기 위해 상기 결합된 세그먼트를 상기 제 1 사용자 및 상기 제 2 사용자에게 송신하는 단계를 포함하는, 송신 관리 방법.
  2. 제 1 항에 있어서,
    상기 제 1 및 제 2 사용자들에게 전송된 상기 제 1 및 제 2 세그먼트들은 상기 결합된 세그먼트가 상기 제 1 및 제 2 사용자들에게 전송되기 전에 전송되는, 송신 관리 방법.
  3. 제 1 항에 있어서,
    세그먼트를 제 1 및 제 2 부분들로 분할하는 단계;
    상기 제 1 부분을 상기 결합된 세그먼트에 포함하는(incorporating) 단계; 및
    상기 제 2 부분을 상기 제 1 및 제 2 사용자들에게 송신하는 단계를 포함하는, 송신 관리 방법.
  4. 제 3 항에 있어서,
    상기 제 2 부분을 상기 결합된 세그먼트와 함께 송신하는 단계를 포함하는, 송신 관리 방법.
  5. 제 1 항에 있어서,
    평균 레이트를 최소화하기 위해 상기 제 1 세그먼트들 및 상기 제 2 세그먼트들의 사이즈들을 선택하는 단계를 포함하는, 송신 관리 방법.
  6. 제 1 항에 있어서,
    상기 제 1 세그먼트들 및 상기 제 2 세그먼트들의 사이즈들의 최적화시에 상기 제 1 사용자 및/또는 상기 제 2 사용자에 의해 상기 제 1 파일 및 상기 제 2 파일이 요구될 확률을 사용하는 단계를 포함하는, 송신 관리 방법.
  7. 사용자들로의 데이터 파일들의 송신을 관리하기 위한 데이터 송신 관리자에 있어서,
    제 1 파일을 복수의 제 1 세그먼트들로 분할하고 제 2 파일을 복수의 제 2 세그먼트들로 분할하기 위한 분할기;
    제 1 사용자에게 제 1 세그먼트를 전송하고, 제 2 사용자에게 상이한 제 1 세그먼트를 전송하고, 상기 제 1 사용자에게 제 2 세그먼트를 전송하고, 상기 제 2 사용자에게 상이한 제 2 세그먼트를 전송하기 위한 송신기 장치; 및
    결합된 세그먼트를 생성하기 위해 상기 제 2 사용자에게 전송된 세그먼트의 적어도 일부와 상기 제 1 사용자에게 전송된 세그먼트의 적어도 일부를 결합하기 위한 결합기로서, 상기 결합된 세그먼트는 결합 전 세그먼트들의 상기 적어도 일부들의 총 사이즈보다 작은 사이즈인, 상기 결합기를 포함하고,
    상기 송신기 장치는 각각의 상기 제 1 및 제 2 사용자들에 대해 상기 결합된 세그먼트 및 세그먼트의 적어도 일부를 사용하여 세그먼트를 복구하기 위해 상기 결합된 세그먼트를 상기 제 1 사용자 및 상기 제 2 사용자에게 전송하도록 동작하는, 데이터 송신 관리자.
  8. 제 7 항에 있어서,
    상기 분할기는 세그먼트를 제 1 및 제 2 부분들로 분할하도록 동작하고,
    상기 결합기는 상기 제 1 부분을 상기 결합된 세그먼트에 포함하도록 동작하고,
    상기 송신기 장치는 상기 제 2 부분을 상기 제 1 및 제 2 사용자들에게 전송하도록 동작하는, 데이터 송신 관리자.
  9. 제 7 항에 있어서,
    평균 레이트를 최소화하기 위해 상기 제 1 세그먼트들 및 상기 제 2 세그먼트들의 사이즈들을 선택하기 위한 프로세서를 포함하는, 데이터 송신 관리자.
  10. 제 7 항에 있어서,
    상기 제 1 세그먼트들 및 상기 제 2 세그먼트들의 사이즈들을 최적화하기 위해 상기 제 1 사용자 및/또는 상기 제 2 사용자에 의해 상기 제 1 파일 및 상기 제 2 파일이 요구될 확률을 사용하기 위한 프로세서를 포함하는, 데이터 송신 관리자.
KR1020137028519A 2011-03-31 2012-03-22 데이터 파일 송신 관리 KR101495560B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/077,420 US9054920B2 (en) 2011-03-31 2011-03-31 Managing data file transmission
US13/077,420 2011-03-31
PCT/US2012/030090 WO2012134941A1 (en) 2011-03-31 2012-03-22 Managing data file transmission

Publications (2)

Publication Number Publication Date
KR20130138316A true KR20130138316A (ko) 2013-12-18
KR101495560B1 KR101495560B1 (ko) 2015-02-25

Family

ID=45895493

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137028519A KR101495560B1 (ko) 2011-03-31 2012-03-22 데이터 파일 송신 관리

Country Status (6)

Country Link
US (2) US9054920B2 (ko)
EP (1) EP2692114B1 (ko)
JP (1) JP5833737B2 (ko)
KR (1) KR101495560B1 (ko)
CN (1) CN103477609B (ko)
WO (1) WO2012134941A1 (ko)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104185983B (zh) 2012-03-16 2016-10-26 株式会社尼康 摄像元件、摄像装置以及摄像系统
US9686335B2 (en) * 2013-03-15 2017-06-20 Echostar Uk Holdings Limited Shared data communication bandwidths among mobile devices
US9535837B2 (en) * 2013-11-19 2017-01-03 Alcatel-Lucent Usa Inc. Decentralized online cache management for digital content conveyed over shared network connections based on cache fullness and cache eviction policies
US9560390B2 (en) 2014-07-07 2017-01-31 Alcatel-Lucent Usa Inc. Asynchronous encoding of digital content
WO2016088237A1 (ja) * 2014-12-04 2016-06-09 富士通株式会社 配信方法、装置、及びプログラム
CN106209926B (zh) * 2015-04-30 2019-06-21 阿里巴巴集团控股有限公司 一种数据更新方法和设备
CN105205174B (zh) * 2015-10-14 2019-10-11 北京百度网讯科技有限公司 用于分布式系统的文件处理方法和装置
DE102016108018A1 (de) 2016-03-03 2017-09-07 Cadami Ug (Haftungsbeschränkt) Kennungscodierungseinrichtung und Kennungsdecodierungseinrichtung zur Datenverteilung in Netzwerken sowie derartige Einrichtungen aufweisende Netzwerkelemente
WO2017149149A1 (de) 2016-03-03 2017-09-08 Cadami Ug (Haftungsbeschränkt) Kennungscodierungseinrichtung und kennungsdecodierungseinrichtung zur datenverteilung in netzwerken sowie derartige einrichtungen aufweisende netzwerkelemente
DE102016103882A1 (de) 2016-03-03 2017-09-07 Cadami Ug (Haftungsbeschränkt) Zuordnungsverfahren sowie Netzwerk mit einer Zuordnungsvorrichtung
EP3451628A1 (en) * 2017-08-31 2019-03-06 Institut Eurecom G.I.E. System and method for managing distribution of information in multi-antenna and multi-transmitter environments
WO2019166106A1 (en) 2018-03-02 2019-09-06 Huawei Technologies Co., Ltd. Devices and methods for coded caching
US11625327B2 (en) * 2019-12-10 2023-04-11 EMC IP Holding Company LLC Cache memory management
CN114374687B (zh) * 2022-01-11 2024-04-16 同方有云(北京)科技有限公司 热磁存储与蓝光存储之间的文件传输方法及装置

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6816872B1 (en) * 1990-04-26 2004-11-09 Timespring Software Corporation Apparatus and method for reconstructing a file from a difference signature and an original file
US6205446B1 (en) * 1997-10-31 2001-03-20 Selectica, Inc. Method for merging multiple knowledge bases into one optimized and compressed knowledge base
JP4281185B2 (ja) * 1999-03-25 2009-06-17 ソニー株式会社 編集装置および方法
JP2001337860A (ja) 2000-05-24 2001-12-07 Newsoft Technology Corp ファイルの保存及び読出しの確実且つ安全な方法
JP2002014684A (ja) * 2000-06-29 2002-01-18 Matsushita Graphic Communication Systems Inc 情報配信方法、サーバ装置及び情報受信端末装置
US6823394B2 (en) * 2000-12-12 2004-11-23 Washington University Method of resource-efficient and scalable streaming media distribution for asynchronous receivers
US7266609B2 (en) * 2001-04-30 2007-09-04 Aol Llc Generating multiple data streams from a single data source
US7237033B2 (en) * 2001-04-30 2007-06-26 Aol Llc Duplicating switch for streaming data units to a terminal
US7130528B2 (en) * 2002-03-01 2006-10-31 Thomson Licensing Audio data deletion and silencing during trick mode replay
US7313137B2 (en) * 2003-02-26 2007-12-25 International Business Machines Corp. System and method for efficient replication and distribution of data objects
JP2007519301A (ja) * 2003-09-30 2007-07-12 ドラプレット テクノロジー インコーポレイテッド 時間型順序外圧縮及びマルチソース圧縮率制御のシステム及び方法
US20090025046A1 (en) * 2005-03-09 2009-01-22 Wond, Llc Hybrid architecture for media services
US8719399B2 (en) * 2005-04-07 2014-05-06 Opanga Networks, Inc. Adaptive file delivery with link profiling system and method
US7640353B2 (en) 2006-04-27 2009-12-29 Microsoft Corporation Guided random seek support for media streaming
US20080005347A1 (en) * 2006-06-29 2008-01-03 Yahoo! Inc. Messenger system for publishing podcasts
US20080016289A1 (en) * 2006-07-11 2008-01-17 Pennock James D External memory interface engine
US8019830B2 (en) * 2007-04-16 2011-09-13 Mark Thompson Methods and apparatus for acquiring file segments
KR101407630B1 (ko) * 2007-09-07 2014-06-13 삼성전자주식회사 분산 파일 시스템 및 분산 파일 시스템의 캐쉬 데이터 대체방법
WO2009100420A2 (en) * 2008-02-07 2009-08-13 Realnetworks, Inc. Selective advertising in media content
US20090222509A1 (en) 2008-02-29 2009-09-03 Chao King System and Method for Sharing Storage Devices over a Network
KR101353115B1 (ko) * 2009-08-03 2014-01-21 제너럴 인스트루먼트 코포레이션 비디오 컨텐트를 인코딩하는 방법
US8150914B1 (en) * 2011-05-25 2012-04-03 Zynga Inc. Simultaneous download of application file portions

Also Published As

Publication number Publication date
EP2692114B1 (en) 2017-09-06
US9401951B2 (en) 2016-07-26
JP5833737B2 (ja) 2015-12-16
US20120254459A1 (en) 2012-10-04
US20140207913A1 (en) 2014-07-24
WO2012134941A1 (en) 2012-10-04
CN103477609B (zh) 2016-06-29
KR101495560B1 (ko) 2015-02-25
US9054920B2 (en) 2015-06-09
CN103477609A (zh) 2013-12-25
JP2014510977A (ja) 2014-05-01
EP2692114A1 (en) 2014-02-05

Similar Documents

Publication Publication Date Title
KR101495560B1 (ko) 데이터 파일 송신 관리
CN106993054B (zh) 文件分发方法、节点及系统
US20190173941A1 (en) Point of presence based data uploading
US9485288B2 (en) Peer-to-peer communication method in content centric network environment
CN106790324B (zh) 内容分发方法、虚拟服务器管理方法、云平台和系统
US8762718B2 (en) Broadcast deduplication for satellite broadband
US10462252B2 (en) Handling of content in a content delivery network
EP2813060B1 (en) A method for collaborative caching for content-oriented networks
KR20130088774A (ko) 분할 콘텐트 전달 시스템 및 방법
US20080313207A1 (en) System and method for collection, retrieval, and distribution of data
AU2009296744B2 (en) Selective data forwarding storage
CN102523234A (zh) 一种应用服务器集群实现方法及系统
WO2021253889A1 (zh) 负载均衡方法、装置、代理设备、缓存设备及服务节点
JP2010504668A (ja) リソース配信の方法、システム、およびエッジサーバ
US10911560B2 (en) Partitioned serialized caching and delivery of large files
KR20100058786A (ko) 컨텐츠 분산 저장형 멀티미디어 스트리밍 시스템 및 방법
Ip et al. COPACC: An architecture of cooperative proxy-client caching system for on-demand media streaming
Sadjadpour A new design for information centric networks
US9264482B2 (en) Batching-based content routing method and apparatus for performing batching-based content routing method
KR20130033252A (ko) 서비스 오버레이 네트워크에서 종단간 QoS 보장형 콘텐츠 전달 방법 및 그 시스템
JP2007041899A (ja) コンテンツの配信装置,コンテンツ配信ネットワークおよびコンテンツ配信方法
US11463520B2 (en) Systems and methods for storing content items in secondary storage
US20180063241A1 (en) Data replication in scalable messaging system
KR20100053009A (ko) 캐시 조각 획득시간 기반의 노드 전환을 이용하는 컨텐츠 분산 저장형 멀티미디어 스트리밍 시스템 및 방법
US20170041383A1 (en) Information object obtaining method, server, and user equipment

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: 20180209

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee