Скачать презентацию Video-on-Demand Vo D Servers l l In normal Скачать презентацию Video-on-Demand Vo D Servers l l In normal

3a14796fecc4602495aec425032f910d.ppt

  • Количество слайдов: 42

Video-on-Demand (Vo. D) Servers l l In normal multimedia databases, responses are for a Video-on-Demand (Vo. D) Servers l l In normal multimedia databases, responses are for a smaller duration compared to the length of a movie. Vo. D Servers: Possible to optimize certain functions, since the sequence of media objects to be retrieved are known apriori for the entire movie durations. Also possible: some optimization techniques for handling multiple requests for the same movie by different users. Hence, Vo. D servers are discussed separately. B. Prabhakaran 1

Vo. D Servers B. Prabhakaran 2 Vo. D Servers B. Prabhakaran 2

Users and Vo. D Servers. . l l l Users can interact with the Users and Vo. D Servers. . l l l Users can interact with the video servers: Play-out Modification l These operations modify the way movies are presented to users. l Presentation of movies can be modified by operations such as fast-forward, rewind, pause, slowmotion play, etc}. Content Modification l E. g. , a user can add subtitles in a particular language to a movie, in order to improve its “viewer-ship” base. l Require storing back the modified information on the Vo. D server. B. Prabhakaran 3

Users and Vo. D Servers l l l Requests are for movies based on Users and Vo. D Servers l l l Requests are for movies based on popularity of the stored movies. A large fraction of user requests are likely to be for certain popular and recently released movies. Probability of requests for relatively less popular movies are really low. Users' movie requests are modeled using Zipf's law. Popularity factor of the stored movies used in deciding on the placement of movies on storage devices. Time of user requests depend on the type of stored programs. B. Prabhakaran 4

Users and Vo. D Servers… l l l For movies, number of user requests Users and Vo. D Servers… l l l For movies, number of user requests will be higher during weekends and evening hours. For lecture presentations, user requests will have different access patterns (perhaps they can be modeled as Poisson process). Temporal pattern of user requests are used in caching of movies and resource management policies. B. Prabhakaran 5

Vo. D Service Types B. Prabhakaran 6 Vo. D Service Types B. Prabhakaran 6

Vo. D Services: PPV l Pay-Per-View (PPV) l l l Time of access to Vo. D Services: PPV l Pay-Per-View (PPV) l l l Time of access to a program is decided by the Vo. D server rather than by the user. Vo. D server multicasts programs at scheduled intervals and users interested in watching them tune to the server at those fixed times. Users cannot modify the playout characteristics by issuing commands such as fast-forward. Implementation of this type of server is very easy as it involves only retrieving media objects and delivering over a multicast. Also, PPV servers need support only one delivery stream per movie. (In fact, the term on-demand is not applicable to this type of servers). B. Prabhakaran 7

Vo. D Services: Quasi Vo. D l Quasi Video-on-Demand (Q-Vo. D) l Q-Vo. D Vo. D Services: Quasi Vo. D l Quasi Video-on-Demand (Q-Vo. D) l Q-Vo. D groups requests for individual movies or programs, and schedules them at regular intervals. l Users can access programs at any time by sending a request to the server. l Vo. D server tries to group the request for the same program in order to optimize system resources such as storage system and network bandwidths. l A user might face some delay for his/her request to get accepted while the Vo. D server tries to group the requests. B. Prabhakaran 8

Quasi Vo. D. . l l Quasi Video-on-Demand (Q-Vo. D) … l Grouping of Quasi Vo. D. . l l Quasi Video-on-Demand (Q-Vo. D) … l Grouping of requests can be constrained by an upper bound on the maximum delay for a user's request. l E. g. , requests arriving within a time duration D being put in one group, thus arriving in the interval D - 2 D being put in the next group, … l Here, the worst case delay for a user is D. Q-Vo. D servers require independent streams per group of requests. B. Prabhakaran 9

User Interaction: Quasi Vo. D l l l Handling of play-out control operations by User Interaction: Quasi Vo. D l l l Handling of play-out control operations by a user is rather clumsy. One possible approach is to switch users from one group to another. E. g. , consider a user in group 2 issuing a fastforward request. User can be switched to group 1 that is ahead of those in group 2. However, if the user continues to fast-forward, then he will have to move out of group 1 also. In the worst case, the Q-Vo. D server has to retrieve specifically for the user (requesting fast-forward) independently. l Defeats the aim of grouping requests to realize storage system and network bandwidth saving. Grouping of movie retrieval requests is difficult if users are highly interactive. B. Prabhakaran 10

Multimedia Servers B. Prabhakaran 11 Multimedia Servers B. Prabhakaran 11

Vo. D Services: “True” Vo. D l l l T-Vo. D assumes total interaction Vo. D Services: “True” Vo. D l l l T-Vo. D assumes total interaction capability for the user. Each user request is treated separately. If 2 user requests arrive at times t 1 and t 2, the Vo. D server performs two separate retrieval operations for satisfying the requests. Due to the independency of handling requests, T-Vo. D model is sometimes referred to as Dedicated Viewing (DV). Since retrieval operations for each user request are different, it is easy to handle playout control operations. B. Prabhakaran 12

Multimedia Servers B. Prabhakaran 13 Multimedia Servers B. Prabhakaran 13

Requirements of Vo. D Servers l l Handling Large Number of Users l Vo. Requirements of Vo. D Servers l l Handling Large Number of Users l Vo. D server may have to support a large number of users (of the order of thousands) requiring concurrent access to stored movies. l Each user can access independently the same or different movie. l Users can be distributed geographically over a wide area. l Hence, network support for Vo. D servers should be able to handle this geographical distribution also. Large Storage Capacity l A Vo. D server might have to store thousands of movies. l Collective storage requirements for thousands of movies may exceed tens of terabytes. B. Prabhakaran 14

Requirements of Vo. D Servers l l Large Network and Storage System Bandwidth l Requirements of Vo. D Servers l l Large Network and Storage System Bandwidth l Vo. D servers need to handle voluminous as well as periodic video and audio objects. l Retrieval of these objects from the storage and their delivery to the users require large storage system bandwidths as well as network throughput. l Required bandwidths at the storage system and the network depend on the number of concurrent users who need to be supported. Real-time Service l Periodic nature of video and audio objects necessitates guarantees from storage system as well as network service provider for retrieving and delivering objects. l Storage system and network service provider have to reserve sufficient resources such as bandwidths and buffer space for guaranteeing retrieval and delivery of objects. B. Prabhakaran 15

Requirements of Vo. D Servers l l l Scalability and Cost Effectiveness l Capability Requirements of Vo. D Servers l l l Scalability and Cost Effectiveness l Capability for handling increase in number of users as well as the number of stored movies. l Increase in number of users - a proportional increase in the required bandwidths at the storage system and network. l Increase in number of movies - increase in the storage capacity. l Economic viability: the cost of storage capacity and the network bandwidths should be low. Reliability l Possibility of crashes - non-zero; the issue of reliability has to be addressed. Heterogeneity l Handle movies in different formats, different network protocols, user hardware… B. Prabhakaran 16

Vo. D Servers Design B. Prabhakaran 17 Vo. D Servers Design B. Prabhakaran 17

Vo. D Server Design l l l Objects Placement l Media objects composing a Vo. D Server Design l l l Objects Placement l Media objects composing a movie or a lecture presentation need to be stored in an efficient manner. Storage Access Scheduling l Requests for accessing (both reading and writing) stored media objects should be scheduled in such a way that the real-time nature of the objects can be handled. Thermal Calibration l Most disks need to perform thermal calibration on a regular basis. l During calibration: the disk cannot be used for retrieving media objects. l Doing manual thermal calibration. l Reserving sufficient disk capacity (in other disk arrays) so that access requests can be satisfied during thermal calibration procedure. B. Prabhakaran 18

Vo. D Server Design l Buffer Sizing and Management l l l Media objects Vo. D Server Design l Buffer Sizing and Management l l l Media objects retrieved from disks need to be buffered before they can be delivered to users. Large volume of video objects composing movies necessitate proper buffer management schemes. Admission Control l User requests for accessing stored movies should be honored if and only if the commitments made to the already admitted users can be satisfied. Vo. D server should evaluate its current commitments and those needed by the new request. Based on these parameters, the server should decide whether or not the new user request can be admitted. B. Prabhakaran 19

Vo. D Server Architectures l l l Hierarchical Servers Parallel Servers Distributed movie placement Vo. D Server Architectures l l l Hierarchical Servers Parallel Servers Distributed movie placement B. Prabhakaran 20

B. Prabhakaran 21 B. Prabhakaran 21

Hierarchical Vo. D Servers l l l Lowest level: l Local Vo. D servers Hierarchical Vo. D Servers l l l Lowest level: l Local Vo. D servers caters to the needs of users in a small area. l Each of these servers store a set of complete movies in their local storage. l Local servers are connected to a regional network that has a set of regional Vo. D servers. Middle Level - Regional Vo. D servers: l Larger ones with more number of movies available in their storage. Highest level: l National Vo. D servers with a large repository of movies. (One can consider international Vo. D servers spanning different countries also). B. Prabhakaran 22

Hierarchical Vo. D Servers l l l Local servers: l When movies are not Hierarchical Vo. D Servers l l l Local servers: l When movies are not available locally: request regional servers to find out whether the requested movies are available there. Regional servers can download the available movies l Regional servers can download the available movies to the local Vo. D server. l Go up to national servers, if needed. Local Vo. D servers can download the required movies from national servers either directly or through a regional one. This type of hierarchical organization of Vo. D servers helps in increasing the number of movies that can be stored in the Vo. D environment. B. Prabhakaran 23

Parallel Servers B. Prabhakaran 24 Parallel Servers B. Prabhakaran 24

Parallel Servers l l A set of Vo. D servers are interconnected by a Parallel Servers l l A set of Vo. D servers are interconnected by a high speed network such as ATM. One of the Vo. D server acts as a master server with a directory that specifies the movie-server placement mapping. Users can access the server storing a desired movie directly. This parallel organization of the servers increase the storage capacity as well as the storage system bandwidth, since users access different servers for different movies. B. Prabhakaran 25

Distributed Movie Placement l l l Movies may or may not be stored entirely Distributed Movie Placement l l l Movies may or may not be stored entirely on a particular server. Blocks of the same movie may be replicated and stored on many Vo. D servers on the network. A Vo. D server serves a geographical region and has a set of customers accessing stored movies at any point in time. Requested movie may or may not be available entirely on the server. l server tries to get blocks of the movie from other Vo. D servers. Hence, in addition to customers, a Vo. D server may be accessed by other Vo. D servers as well. B. Prabhakaran 26

“Distributed” Movie Servers B. Prabhakaran 27 “Distributed” Movie Servers B. Prabhakaran 27

Functional View B. Prabhakaran 28 Functional View B. Prabhakaran 28

Example l l l Vo. D server S serving a customer c 1. Requested Example l l l Vo. D server S serving a customer c 1. Requested movie has 25 blocks spread over S as well as CS 1 to CS 4, with blocks b 16 to b 20 replicated. Server S has to download blocks b 6 to b 25 from others. S has to create a retrieval schedule for the blocks b 6 to b 25: ensuring there is no gap in the movie presentation for the customer. b 1 - b 6 are available local to the server S and hence can be shipped to the customer directly. Server S has to get a commitment from other Vo. D servers for downloading the missing blocks as follows : b 6 -b 10 from CS 1, b 11 -b 15 from CS 3, b 16 -20 from CS 2 and b 21 -b 25 from CS 4. B. Prabhakaran 29

Example. . l l l Downloading the blocks from the Vo. D servers: S Example. . l l l Downloading the blocks from the Vo. D servers: S has to specify the time at which the blocks are needed. Requested Vo. D server is not able to commit? l Try another Vo. D server l Request the same Vo. D server for another commitment time. CS 2 is not able to commit at the requested time t 3 but at t 3'. l Request server CS 1 to provide blocks b 16 -b 20. If CS 1 is able to commit for the blocks at t 3, then S can proceed with the same retrieval schedule. l S has to delay the movie presentation by δt = t 3' - t 3. l S might have to reschedule requests for previous blocks: b 6 -b 10 at t 1 + δt, $b 11 -b 15$ at t 2 + δt and b 21 -b 25 at t 4 + δt. B. Prabhakaran 30

Multimedia Servers B. Prabhakaran 31 Multimedia Servers B. Prabhakaran 31

Implementation Issues l l Buffer Management Movie Placement Handling play-out modifications Admission Control B. Implementation Issues l l Buffer Management Movie Placement Handling play-out modifications Admission Control B. Prabhakaran 32

Buffer Management l l l Rate of reading from the disks and the delivery Buffer Management l l l Rate of reading from the disks and the delivery of data over the network may not be at the same rate. Additional buffering may be needed to smooth the object reading and delivery operations. Buffering techniques generally followed: l Double Buffering: 2 buffers (normally of equal size) are used: one for reading objects from disk; another for delivering over the network. l Roles of the 2 buffers change every cycle: buffer used for reading objects from disk in one cycle is used for delivery over the network in the second cycle and vice versa. B. Prabhakaran 33

Buffer Management. . l Buffering techniques generally followed. . l Circular Buffering : 1 Buffer Management. . l Buffering techniques generally followed. . l Circular Buffering : 1 buffer treated as a circular one by using pointers. 2 pointers - a read and a write pointer - are used. l Initially, both the pointers point to the start, indicating that the buffer is empty. l As contents of an object is read into the buffer, write pointer is moved. l Read pointer is moved as the data is delivered the network. l Pointers are reset to the start when their upper bound is reached. B. Prabhakaran 34

Buffer Management… l l l Some Vo. D servers follow interval caching policy. Here, Buffer Management… l l l Some Vo. D servers follow interval caching policy. Here, media objects are held in the cache for a specified duration d. When another request for the same object comes, the cached object is delivered over the network. B. Prabhakaran 35

Movie-to-Disk Array Allocation B. Prabhakaran 36 Movie-to-Disk Array Allocation B. Prabhakaran 36

Movie-to-Disk Array Allocation l l l Movies have to be assigned to the sets Movie-to-Disk Array Allocation l l l Movies have to be assigned to the sets of disk arrays achieving: l Balance of load l Maximization of throughput Extremely popular movies may need to be replicated over multiple disk arrays to satisfy the user demand. Assignment of movies over the set of disk arrays: l Popularity of a movie or its request probability l Number of movies to be stored in the Vo. D server l Replication factor for popular movies, i. e. , the number of additional copies to be maintained for each popular movie l Available storage capacity B. Prabhakaran 37

Handling Play-out Modifications l l Modifying the retrieval and delivery of movie content depends Handling Play-out Modifications l l Modifying the retrieval and delivery of movie content depends on the format in which video objects are stored. E. g. , consider fast-forward operation on a MPEG coded video. l Video frames can be skipped to achieve the effect of fast-forward. l l l Frame skipping cannot be done arbitrarily because of the inter-dependencies. Only B frames or B & P frames can be skipped in the MPEG video, resulting: [IPP. . . ] or [III. . . ]. Both of the above sequences result in higher storage and network bandwidths, since frame sequences are to be delivered at a faster rate. B. Prabhakaran 38

Handling Play-out Modifications. . l Alternate solutions possible to overcome this difficulty: l Skip Handling Play-out Modifications. . l Alternate solutions possible to overcome this difficulty: l Skip Chunks of Video l Chunks of contiguous video frames are skipped (instead of skipping only B frames or B & P frames) l After skipping one chunk, the next chunk of video frames is played out in the normal order. l Keeps the storage and network bandwidth requirements constant. l Store Intra-coded Frames l Intra-coded video frames are also stored along with the regular inter-coded (MPEG and other similar formats) video. l Advantage: “unlimited” speeds for fast-forward and rewind can be provided. l Disadvantage: increase in storage capacity. B. Prabhakaran 39

Admission Control l l PPV Vo. D servers do not worry about admission control. Admission Control l l PPV Vo. D servers do not worry about admission control. Q-Vo. D servers is therefore more related to the maximum number of groups that can be admitted T-Vo. D servers: related to the maximum number of users who can be concurrently handled. Influenced by the following factors : l Disk bandwidth: influences the maximum number of concurrent retrievals. l Buffer space in the server: available buffer space will limit the number of concurrent users. l Available network bandwidth: influences the rate at which objects can be delivered to users and hence the duration for which buffers are to be held. B. Prabhakaran 40

Admission Control. . l Influenced by the following factors. . l Caching policy l Admission Control. . l Influenced by the following factors. . l Caching policy l Grouping policy l Servers providing Q-Vo. D service group user requests. The policies followed for grouping user requests influence the maximum number of concurrent user requests. l Handling Playout Modifications: l Admission control policies are often influenced by the frequency of play-out modification requests and the way they are handled by the Vo. D servers. B. Prabhakaran 41

Vo. D Servers: Components B. Prabhakaran 42 Vo. D Servers: Components B. Prabhakaran 42