Professional Documents
Culture Documents
Networks
Video Streaming:
Video streaming is the continuous transfer of video data from a server to a client.
Video streaming allows users to watch videos online without downloading them.
streamed video content
can include movies, TV shows, YouTube videos, and live streams.
Example:
Services like Netflix and Hulu have been very successful in providing streaming mo
vies to their customers.
Video:
Video is generally images displayed at a fixed rate such as 24 to 30 images per
second.
➢ The basic media in video streaming apps are pre-recorded videos, which can
be movies, TV shows, sports events, or video productions (like the ones you
see on YouTube). Users can watch these recorded videos on-demand by
sending a request to the server hosting the recording. Nowadays, video
streaming is provided by many Internet companies such as Netflix, Youku,
Amazon and YouTube (Google).
Characteristics of videos:
o An important characteristic of video is that it can be compressed,
thereby trading off video quality with bit rate. Today’s off-the-shelf
compression algorithms can compress a video to essentially any bit
rate desired
o the most salient characteristic of video is its high bit rate. Today’s off-
the-shelf compression algorithms can compress a video to essentially
any bit rate desired. the higher the bit rate, the better the image
quality and the better the overall user viewing experience.
Images:
An uncompressed, digitally encoded image consists of an array of pixels, with
each pixel encoded into a number of bits to represent luminance and color.
CDNs:
A content delivery network (CDN) is a group of geographically distributed
servers that speed up the delivery of web content by bringing it closer to where
users are.
A CDN manages servers in a multiple geographically distributed
locations, stores copies of the videos (and other types of Web content,
including documents, images, and audio) in its servers, and attempts to direct
each user request to a CDN location that will provide the best user
experience.
Types of CDNs:
Private CDN
Owned by contend provider itself. Ex Google’s CDN distributes YouTube videos and
other types of content.
Third-party CDN
CDN that distributes content on behalf of multiple content providers. Ex Akamai’s
CDN distributes Netflix and Hulu content.
CDN Working:
When a user requested some content CDN will need to intercept the request in order
to be able to decide which server cluster should service the request. DNS ends up playing
a large role in this process.
Let's consider a simple scenario: a content provider, ExampleMovies, pays ExampleCDN to
distribute their content. ExampleMovies has URLs with “video” and an ID for the video (so Star
Wars 37 might have a URL of http://video.examplemovies.com/R2D2C3PO37). Let's walk through
the six steps that occur when a user requests to watch Star Wars 37 on ExampleMovies.
1. The user visits examplemovies.com and navigates to the web page with Star Wars 37.
2. The user clicks on the link http://video.examplemovies.com/R2D2C3PO37 and the user's
host sends a DNS query for the domain “video.examplemovies.com”.
3. The DNS query goes to the user's local DNS server (LDNS), which in many cases is a DNS
server in their access ISP's network. This DNS server issues an iterative DNS query for
“video” to the authoritative DNS server for examplemovies.com, which is
ExampleMovies's DNS server. ExampleMovies's DNS server knows that the “video”
domain is stored on ExampleCDN, so it sends back a hostname in ExampleCDN's domain,
like a1130.examplecdn.com.
4. The user's LDNS performs an iterative DNS query to ExampleCDN's name server for
a1130.examplecdn.com. ExampleCDN's name server system (eventually) returns an IP
address of an appropriate ExampleCDN content server to the user's LDNS. (Which content
server? We'll talk about that in the next section.)
5. The user's LDNS returns the ExampleCDN IP address to the user. Notice - from the user's
perspective, all that happened was they asked for an IP address for
“video.examplemovies.com”, and then they got an IP address back.
6. The user's client directly connects via TCP to the IP address provided by the user's LDNS,
and then sends an HTTP GET request for the video.
Notice the interplay of the DNS request/responses, and what the user's perspective of the whole
exchange is. By intercepting the requests with DNS, CDNs have the opportunity to choose where
to direct users, based on location and/or current conditions.
Cluster Selection Strategies
Mechanism for dynamically directing clients to a server cluster or a data
center within the CDN.
Geographically closest
❖ Assign the client to the cluster that is geographically closest.
❖ This may not work for some client since the geographically closest
cluster may not be the closest cluster along the network path.
• Real-time measurement of delay
❖ CDN performs periodic real-time measurement of delay and loss
performance between their clusters and clients
IP anycast
❖ The routers in the Internet route the client’s packets to the “closest”
cluster, as determined by BGP.
Load on the clusters
❖ Clients should not be directed to overloaded clusters.
ISP delivery cost
❖ The clusters may be chosen so that specific ISPs are used to carry CDN-
to-client traffic, taking into account the different cost structures in the
contractual relationships between ISPs and cluster operators.
• DNS
• HTTP redirection
• IP Anycast
Benefits of CDN:
Faster Load Times: By serving content from locations closer to the user, CDNs can
significantly reduce page load times¹.
Reduced Bandwidth Costs: CDNs decrease the amount of data transferred from the
origin server by caching content, thus lowering hosting costs.
Increased Content Availability: With their distributed nature, CDNs can handle
more traffic and withstand hardware failures better than traditional hosting
services¹.
Improved Security: CDNs offer several security benefits, including protection
against DDoS attacks and improved security certificates