The second generation of cloud computing systems, known as domain-specific clouds, are emerging based on application-specific processors and serverless computing paradigm. As multimedia streaming services are increasingly growing in popularity and diversity, this book is authored to introduce “multimedia clouds” as a domain-specific cloud that operates in the intersection of cloud computing technologies and digital media streaming. The book concentrates on the architectural aspects of multimedia clouds and describes development of high-level abstractions that will mitigate the burden of programmers, cloud architects, and system administrators. Multimedia clouds not only democratize multimedia streaming and add flexibility to the streaming services, they also help stream providers to offer robust and reliable streaming services in a cost- and energy-efficient manner.
Daftar Isi
1 Introduction.- 1.1 Overview.- 1.2 Multimedia Streaming and Cloud Computing.- 1.3 The Essence of this Book.- 1.4 Characteristics of the Multimedia Streaming Cloud (MSC).- 1.4.1 Quality of Experience (Qo E) in the MSC Platform.- 1.4.2 Robustness of the MSC Platform.- 1.4.3 Function-as-a-Service and Serverless Computing in the MSC Platform.- 1.5 A Bird-Eye View of the Multimedia Streaming Cloud (MSC).- Platform.- References.-
2 Demystifying Multimedia Streaming Workflow.- 2.1 Overview. -2.2 Video Streaming Types.- 2.3 Video Transcoding.- 2.3.1 Bit Rate.- 2.3.2 Resolution.- 2.3.3 Frame Rate.- 2.3.4 Codec.- 2.4 Video Delivery.- 2.4.1 Packaging.- 2.4.2 Encryption. -2.4.3 Streaming Protocols.- 2.5 Content Delivery Network (CDN).- 2.6 Video Playback.-2.7 Summary.- References.- xi.- xii Contents.-
3 Multimedia Cloud: Designing a Special-Purpose Cloud platform for Interactive Multimedia Streaming.- 3.1 Overview. -3.2 Characterizing the Multimedia Streaming Cloud (MSC) Environment.- 3.2.1 Stakeholders of MSC.- 3.2.2 Characteristics of Multimedia Streaming Tasks.- 3.2.3 Uncertainty.- 3.3 Architecture of the Multimedia Streaming Cloud (MSC) Platform.- 3.3.1 Object-as-a-Service (Oaa S) Abstraction in the MSC Platform.- 3.3.2 Enabling Object-as-a-Service (Oaa S) Abstraction in the MSC Platform.- 3.3.3 Enabling Live Object Migration.- 3.3.4 Single Pane of Glass to Objects in MSC.- 3.4 Summary.- References.-
4 Applications of Multimedia Clouds.- 4.1 Overview.- 4.2 Multimedia Streaming Types.- 4.2.1 On-Demand Multimedia Streaming.- 4.2.2 Live Multimedia Streaming.- 4.2.3 Live-to-VOD Streaming.- 4.2.4 Differences in Processing Live and VOD Streaming.- 4.3 Basic Services Offered by MSC.- 4.3.1 Multimedia Content Transcoding. -4.3.2 Video Packaging.- 4.3.3 Analytical Services of Multimedia Streaming.- 4.4 Advanced Services Offered by MSC.- 4.4.1 Smart (AI-based) Multimedia Streaming Services.- 4.4.2 Augmented Reality (AR) and Virtual Reality (VR)Streaming.- 4.4.3 Holographic Multimedia Streaming.- 4.4.4 360_ Multimedia Streaming.- 4.5 Summary.- References. –
5 Computing Infrastructure for Multimedia Streaming Clouds (MSC).- 5.1 Overview.- 5.2 Virtualization Platforms for MSC.- 5.2.1 Case-Study: Appropriate Virtualization Platform for Multimedia Processing Using FFmpeg, – 5.3 Heterogeneous Computing for Multimedia Streaming Clouds (MSC).- 5.3.1 Heterogeneous Resource Provisioning in MSC.- 5.3.2 Case-Study: Performance Analysis of Video Transcoding Operations on Heterogeneous Cloud VMs.- Contents xiii.- 5.4 Performance-Cost Trade-Off of Multimedia Processing on Heterogeneous Cloud VMs.- 5.4.1 Modeling Performance versus Cost Trade-Off of Transcoding Tasks on Heterogeneous VMs.- 5.4.2 Case Study of the Cost Performance Trade-Off Model.- 5.5 Scheduling of Multimedia Segments on Heterogeneous Machines.- in MSC 81 5.5.1 Qo S-Aware Multimedia Task Scheduler.- 5.5.2 Self-Configurable Heterogeneous VM Provisioner.- 5.6 Case-Study: Making use of Heterogeneous Computing in Live-Streaming Industry.- 5.7 Summary.- References.-
6 Service Reuse in Multimedia Clouds.- 6.1 Overview.- 6.2 Is Function Aggregation (Merging) Beneficial? A Case-Study on Video Transcoding.- 6.2.1 Introducing Video Benchmark Dataset.- 6.2.2 Case-Study: Benchmarking Execution-Time of Video Transcoding Tasks.- 6.2.3 Analyzing the Impact of Merging Video Tasks.- 6.3 Predicting the Execution-Time Saving of Aggregating Functions.- 6.3.1 A Model to Predict Execution-Time Saving.- 6.3.2 Gradient Boosting Decision Tree (GBDT) to Predict the Execution-Time Saving.- 6.3.3 Performance Evaluation of the Execution-Time Saving Predictor.- 6.4 Function Aggregation in the Admission Control Unit of MSC.- 6.5 Task Similarity Detection.- 6.5.1 Categories of Mergeable Tasks.- 6.5.2 Detecting Tasks of Similar Functions.- 6.6 Identifying Merging Appropriateness.- 6.6.1 Overview.- 6.6.2 Evaluating the Impact of Merging.- 6.6.3 Positioning Aggregated Tasks in the Scheduling Queue.- 6.7 Adapting Merging based on the Oversubscription Level.- 6.7.1 Overview.- 6.7.2 Quantifying Oversubscription in the MSC Platform.- 6.7.3 Adaptive Task Merging Aggressiveness.- 6.8 Summary and Discussion.- References.- xiv Contents.-
7 Low-Latency Delivery Networks for Multimedia Streaming.- 7.1 Overview.- 7.2 Content Delivery Networks (CDN).- 7.3 Peer to Peer (P2P) Networks.- 7.4 Fog Delivery Networks (FDN) versus Content Delivery Networks (CDN.- 7.4.1 Federated Fog Delivery Networks (F-FDN).- 7.4.2 Efficient Operation of F-FDN.- 7.4.3 Introducing Different Streaming Delivery Methods for Evaluation.- 7.4.4 Evaluation of Stream Delivery Methods.- 7.5 Streaming Protocols.- 7.6 Case-Study: Low-Latency Streaming in Practice.- 7.7 Summary.- References.-
8 Other Aspects of Multimedia Clouds.- 8.1 Domain-Specific Billing.- 8.2 Networking of the Multimedia Streaming Clouds.– 8.3 Security of Multimedia Streaming.- 8.3.1 Privacy.- 8.3.2 Digital Rights Management.- 8.4 Storage Service for Multimedia Contents.- 8.4.1 Cloud Storage for Multimedia Streaming.- 8.5 Summary.- References.-
9 Prototype Implementation of the MSC Platform.- 9.1 Overview.- 9.2 Serverless Computing Paradigm in Practice.- 9.3 A Use Case for the MSC Platform.- 9.4 Characteristics of Multimedia Stream Processing.- 9.5 Architecture of the MSC Prototype Implementation.- 9.5.1 Media Repository.- 9.5.2 Service Repository.- 9.5.3 Request Ingestion.- 9.5.4 Task Admission Control.- 9.5.5 Task Queue.- 9.5.6 Task Scheduler.- 9.5.7 Task Execution Time Estimator.- 9.5.8 Execution Engine.- 9.5.9 Provisioning Manager and Elasticity Manager.- 9.5.10 Stream Manager.- 9.5.11 Media Caching.- 9.6 Performance Evaluation.- Contents xv.- 9.6.1 Experimental setup.- 9.6.2 Evaluating Task Execution Unit Configurations.- 9.6.3 Evaluating Scheduling Policy.- 9.7 Summary.- References.-
10 Future of Multimedia Streaming and Cloud Technology.- 10.1 Overview.- 10.2 Application-Specific Integrated Circuits (ASICs) in Domain-Specific Clouds.- 10.3 Efficient Scheduling of Functions on Heterogeneous Machines.- 10.4 Supporting both Live and On-Demand Multimedia Streaming on the same Underlying Resources.- 10.5 Blockchain Technology for Multimedia Streaming.- 10.6 Reuse and Approximate Computing of Functions in Multimedia Clouds and other Domain-Specific Clouds.- 10.7 Machine Learning for Multimedia Processing.- 10.8 Avoiding Bias in MSC and Other Domain-Specific Clouds.- 10.9 Dependability of Cloud-based Multimedia Streaming.- References
Tentang Penulis
Dr. Amini is a researcher in Distributed and Cloud Computing area since 2003. He is currently an Associate Professor at the School of Computing and Informatics, University of Louisiana at Lafayette. He is the director of High Performance Cloud Computing (HPCC) laboratory where several researchers study various dimensions of cloud-based multimedia streaming. Dr. Amini has received NSF CAREER Award to research and develop the notion of Multimedia Cloud systems.
Dr. Xiangbo Li is a software engineer at Twitch. He is working on video transcoding, packaging and delivery. He holds a Ph D degree in Computer Engineering from the University of Louisiana at Lafayette, Lafayette, LA. He is a coauthor of 14 academic articles and 4 U.S. patent applications.