Customer Premises Equipment Virtualization Virtualization 2 Virtualization Virtualization

  • Slides: 31
Download presentation
Customer Premises Equipment Virtualization

Customer Premises Equipment Virtualization

Virtualization 2

Virtualization 2

Virtualization Ø Virtualization the creation of a virtual rather than actual version of a

Virtualization Ø Virtualization the creation of a virtual rather than actual version of a device Ø Internet of Things (Io. T) integration of the physical world into computer-based systems 3

Virtualization Ø ETSI(European Telecommunications Standards Institute) Ø Network Function Virtualization (NFV) design, deploy and

Virtualization Ø ETSI(European Telecommunications Standards Institute) Ø Network Function Virtualization (NFV) design, deploy and manage a fully virtualized infrastructure 4

Traditional Home Enironment STB/RGW Virtualized Home Enironment v. STB/v. RGW 5

Traditional Home Enironment STB/RGW Virtualized Home Enironment v. STB/v. RGW 5

Pros & Cons of v. STB/v. RGW Pros Cons Ø CAPEX Reduction Ø Enormous

Pros & Cons of v. STB/v. RGW Pros Cons Ø CAPEX Reduction Ø Enormous amounts of cloud resources Ø OPEX Reduction Ø Improved Qo. E Ø Reduced dependency on the CPE 6

Network Topology Source v. STB/v. RGW Destination Ø Video Transmission Ø Video Reception Ø

Network Topology Source v. STB/v. RGW Destination Ø Video Transmission Ø Video Reception Ø Transcoding Ø Video Projection Ø Video Relay Ø PVR (Personal Video Recorder) 7

Inventory 8

Inventory 8

9

9

Open. Stack Services Overview Ø Compute Ø Dashboard Ø Storage Ø Command line interface

Open. Stack Services Overview Ø Compute Ø Dashboard Ø Storage Ø Command line interface (CLI) Ø Networking 10

Open. Stack Ø Dashboard CLI 11

Open. Stack Ø Dashboard CLI 11

RTP & RTCP Real-Time Transmission Protocol RTP Control Protocol Ø Payload Identification Ø Qo.

RTP & RTCP Real-Time Transmission Protocol RTP Control Protocol Ø Payload Identification Ø Qo. S Monitoring Ø Source Identification Ø Congestion Control Ø Sequence Numbering Ø Identification Ø Timestamping Ø Session size estimation Ø Scaling 12

GStreamer Ø API for multimedia applications Ø Pipeline Architecture Ø Plugin Architecture Ø Protocol

GStreamer Ø API for multimedia applications Ø Pipeline Architecture Ø Plugin Architecture Ø Protocol Handling Ø Extensible 13

Useful Libraries Ø GLib Provide the main loop Ø GTK+ Graphical User Interface Ø

Useful Libraries Ø GLib Provide the main loop Ø GTK+ Graphical User Interface Ø GIO User network control 14

Implementation 15

Implementation 15

Destination characteristics Video Projection 16

Destination characteristics Video Projection 16

Destination Implementation Graphical User Interface Interaction Ø PLAYING: State changing Destination → v. STB/v.

Destination Implementation Graphical User Interface Interaction Ø PLAYING: State changing Destination → v. STB/v. RGW → Source Ø PAUSE: State changing Destination → v. STB/v. RGW → Source Ø START_RECORDING: Branch adding Destination → v. STB/v. RGW Ø STOP_RECORDING: Branch removing Destination → v. STB/v. RGW Ø UP: Caps modification Destination → v. STB/v. RGW Ø DOWN: Caps modification Destination → v. STB/v. RGW 17

v. STB/v. RGW characteristics Block Diagram 18

v. STB/v. RGW characteristics Block Diagram 18

v. STB/v. RGW characteristics Video Recording branch Adding branch: Removing branch: if (gst_pad_link (tee_save_pad,

v. STB/v. RGW characteristics Video Recording branch Adding branch: Removing branch: if (gst_pad_link (tee_save_pad, bin_pad) != GST_PAD_LINK_OK) { g_printerr ("Save-Tee could not be linked. n"); gst_object_unref (pipeline); return -1; } //Set the bin state to PLAYING// gst_element_set_state (bin, GST_STATE_PLAYING); /* remove the probe first */ gst_pad_remove_probe (pad, GST_PAD_PROBE_INFO_ID (info)); gst_object_ref (bin); gst_bin_remove (GST_BIN (pipeline), bin); gst_pad_send_event (bin_pad, gst_event_new_eos ()); gst_element_set_state (bin, GST_STATE_NULL); 19

v. STB/v. RGW characteristics Video Transcoding branch Changing caps: Caps specifications: g_object_set (G_OBJECT(capsfilter), "caps",

v. STB/v. RGW characteristics Video Transcoding branch Changing caps: Caps specifications: g_object_set (G_OBJECT(capsfilter), "caps", caps 6, NULL); resol ++; g_print("Changing resolution to %d: n", resol); /* setting up the caps on videoscale elements caps 6 = gst_caps_new_simple ("video/x-raw", "width", G_TYPE_INT, 640, "height", G_TYPE_INT, 360, NULL); caps 5 = gst_caps_new_simple ("video/x-raw", "width", G_TYPE_INT, 360, "height", G_TYPE_INT, 280, NULL); caps 4 = gst_caps_new_simple ("video/x-raw", "width", G_TYPE_INT, 280, "height", G_TYPE_INT, 240, NULL); … 20

Measurements 21

Measurements 21

Quality comparison High quality content Low quality content 22

Quality comparison High quality content Low quality content 22

Network distribution High quality content 23

Network distribution High quality content 23

Network traffic However Thus 24

Network traffic However Thus 24

Sum of network traffic For the same stream: thus: 25

Sum of network traffic For the same stream: thus: 25

Network distribution Quality variations in content Low Quality content 26

Network distribution Quality variations in content Low Quality content 26

Sum of network traffic For the transcoded stream: 27

Sum of network traffic For the transcoded stream: 27

Workload Distribution High quality, no recording enabled High quality with recording enabled 28

Workload Distribution High quality, no recording enabled High quality with recording enabled 28

Workload Distribution Low quality, no recording enabled Low quality with recording enabled 29

Workload Distribution Low quality, no recording enabled Low quality with recording enabled 29

Statistics reception Statistics publications Gst. Structure *stats; gchar *str; /* get the source stats

Statistics reception Statistics publications Gst. Structure *stats; gchar *str; /* get the source stats */ g_object_get (source, "stats", &stats, NULL); /* simply dump the stats structure */ str = gst_structure_to_string (stats); g_print ("source stats: %sn", str); 30

Conclusion Ø Reduced cost Ø Improved transition Ø Environment friendly 31

Conclusion Ø Reduced cost Ø Improved transition Ø Environment friendly 31