You are on page 1of 8

WHITE PAPER

CDNs DEMYSTIFIED
Copyright © 2012 Elemental Technologies, Inc. CDNs Demystified – A Streaming Technology Primer

A Streaming Technology Primer
1

............................................................................................................................... 3 What is a CDN? ..............................CONTENTS Overview ............................................................... 3 Stateless Connections .................................................................................. 5 Elements of a CDN ................................................................................................................................................................................................................................................................. 5 Physical Topology of a CDN ............................ Inc................................................................................ 6 Conclusion.................................................................................................................................................................................. 3 Protocols and Connections ................................................................ 3 Stateful Connections ...................................................... 8 Copyright © 2012 Elemental Technologies............................................... 3 Basic CDN Video Functions ............................. 4 CDN Content Onramp Strategies ....................................... CDNs Demystified – A Streaming Technology Primer 2 ...........................................................................................................................................................................................................................................

VOD services are provided by CDN edge servers that deliver static pre-encoded video files to client video players. RTMPE and MMS. but workarounds have been introduced. client and network status are utilized in negotiating video traffic between the client and server and also take into account the overall server load and performance. BASIC CDN VIDEO FUNCTIONS CDN video services are divided into two basic types: ―Video On Demand‖ (VOD) and ―live‖. and network components that acts as one large distributed computer. STATEFUL CONNECTIONS Stateful connections are physical socket connections that exist between an encoder and a CDN or a player and a CDN. among others. CDNs Demystified – A Streaming Technology Primer 3 . The network protocols used for these types of connections are usually proprietary and specific to the media server and player used. Read on to gain a working knowledge of how a CDN operates. These can be difficult to emulate in stateless connections. Server. most CDNs provide both analytic and provisioning control panels for video suppliers to configure and monitor their usage. WHAT IS A CDN? A CDN is a system of software. hardware. these processes are transparent to the encoder source and client player. Inc. such as ChinaCache. they are being replaced by stateless based protocols primarily based on HTTP. These protocols utilize sophisticated client and server message stacks to optimize performance and user experience. server co-location and cloud processing. CDNs frequently use specialized edge servers running media server software. They remain connected throughout the duration of an encoder or player viewing session. This brief focuses predominantly on CDN services related to ingest and delivery of digital video content. file storage. become familiar with terminology common to CDNs. to handle these types of connections. or deployed worldwide. and streaming delivery architectures. quicker startup. such as Akamai. In addition to these services. PROTOCOLS AND CONNECTIONS All interactions between video encoders and CDNs or video players and CDNs are defined by network protocols. Examples of these include RTMP. Some of the key benefits of stateful connections include: the ability to track unique user sessions in viewing video content.OVERVIEW The definition of a Content Delivery Network (CDN) is evolving as these providers expand the range of services they deliver and video suppliers they serve. Live services are provided by CDN edge servers that deliver live content—dynamically generated video files or network data streams— that originates from video encoders and is transported to client video players through the backbone network of the CDN. lower latency. Services performed by a CDN may include digital media delivery. In most cases. Network connection protocols fall into two categories: stateful and stateless connections. such as those provided by Elemental. This brief describes the fundamental capabilities and practices of a CDN as they relate to video processing functions. Copyright © 2012 Elemental Technologies. such as Adobe’s Media Server or Wowza Media Server. network transit. such as Apple HLS or Microsoft Smooth Streaming. and learn about the interactions that take place between the components that make up a CDN video delivery system. such as HTTP or RTMP. CDNs can be regional. Although these protocols have been used for over a decade. and better error control/handling. website acceleration.

It is the most inefficient method because it does not support multi-bit rate delivery. or a type of manifest/file segment paradigm. but is being replaced by newer methods of delivery described below. which makes it difficult to map specific file requests to individual user sessions for reporting or analytics. The most common implementation of HTTP range request video delivery has been the initial implementation of HTML5 players with WebM content. a browser will download the entire video file regardless of what the user is viewing.   Copyright © 2012 Elemental Technologies. Others include Flash player. many CDNs are optimized for small object delivery of content and now are able to move video around in small segments instead of large files.STATELESS CONNECTIONS Stateless connections use the HTTP protocol to deliver video content in one of three modes: progressive download. This decreases their network load and storage requirements while increasing efficiency and utilizing many of the cache management features in their existing HTTP delivery infrastructure. a video buffer exists in the range of 3-5 seconds. Microsoft Smooth Streaming (MSS). or slightly enhanced HTTP platforms. but differs in that the player makes multiple GET requests for sections of the video via the HTTP 1. Additionally. The player does not require the entire file to be downloaded before displaying video. logic. it is simultaneously requesting the next range of data from within the video file. and Apple HTTP Live Streaming (HLS). Flowplayer. Progressive download is the lowest common denominator in video delivery. The three most common implementations are Adobe HTTP Dynamic Streaming (HDS).0 edge server to service the request. HTTP range request delivery is similar to progressive download. devices and formats are supported and it only requires the CDN to provide the most basic HTTP 1. and in many cases. Inc. Typically. As the player is displaying video from one request. and Microsoft Smooth Streaming. to deliver all of their content instead of relying on a fleet of media servers. there have been issues requiring smart players or smart HTTP servers to handle segment requests that fail to result in leading reference/Iframes. such as Apple Streaming. this type of delivery is very attractive to CDNs since it allows them to use existing generic servers.1 support on it edge servers. such as Netflix. tablets and web platforms. In most cases. This type of delivery is characterized by repetitive HTTP requests or pushes of video data chunks in the form of individual file segments. Adobe HDS. HTTP range request.  Progressive download delivery is characterized by a video player requesting a file and playing it as it downloads. If a player requests a range request of data. That said. Progressive download was the first method used to present video on the internet. Almost all players. CDNs Demystified – A Streaming Technology Primer 4 . primarily due to the explosion of video via mobile devices. Although stateless connections may reuse a connection for each request. Most player scenarios require a manifest file that is used by the player as a map of the video segment files. the encoder simply pushes 2 – 10 second sequential file segments to an HTTP origin server and periodically updates the manifest file. such as IIS. such as Apache. which may include third party licensing fees and usually require specialized resources to configure and maintain. This still works well for short video clips. the files are written to disk and then proceed to be pushed to the CDN for distribution and delivery.1 range request/partial content mechanism. no special functionality is required of the CDN other than basic HTTP 1. These stateless connections have a very simple HTTP protocol in which all request. Most implementations attempt to reuse connections through keep-alive mechanisms to promote for speed and efficiency. If the player can handle these cases. and optimization is performed by the player and there is no evaluation or awareness of server state. it is possible the request will result in a video segment that does not have a leading reference/I-frame. when a request for media file types is made. Some CDNs have enhanced HTTP servers that. this is not guaranteed. In all three of these scenarios. will guarantee that the first frame returned in the video segment begins with a reference/I-frame. In practice. JW Player and several other popular players. usually in response to a seek function. Each connection may or may not use the same physical network socket. Manifest/file segment delivery has become the fastest growing method of delivery.

Pull strategies are characterized by the CDN pulling a file from a HTTP or FTP server based on a request the CDN received for content. The video supplier is then required to explicitly introduce each piece of content onto the CDN before it can be viewed or downloaded.  PHYSICAL TOPOLOGY OF A CDN A CDN consists of two tangible pieces: Points of Presence (PoP) and the Backbone Network (BBN). Most traditional CDNs were built for hardwired delivery of content via ISPs. the CDN will retrieve (pull) the content from the video supplier’s origin. In many cases. Copyright © 2012 Elemental Technologies. CDN PoPs are co-located in MSO/ISP back office installations. managed and monitored network resources. Most of the services that video suppliers use are hosted on servers that reside within PoPs. In a pull scenario. the CDN simultaneously proxies the request back to the requesting client and propagates the content into the CDN’s content management system. such as Akamai. a specific predefined origin must be set up in the video supplier’s CDN profile before a request is made. CDNs operate under the strategy of owning PoPs in areas of dense population and close geographical proximity to the large number of viewers that are accessing content from video suppliers. Large CDNs.000 CDN places in a physical location. Not all PoPs contain all types of servers or serve 100 PoPs worldwide. the same purposes. Recently. Typically. the proximity of these PoPs to the viewers making content request. When the CDN receives a request for content that it does not have in its inventory. while in other cases. they may be shared peering arrangements. whereby they are not dedicated to CDN traffic but are also not used as part of the public internet. have hundreds of PoPs worldwide. the BBN’s connection of the PoPs and the efficiency. as opposed to relying on the public internet. The reason CDNs use a dedicated backbone is to provide transfers between PoPs using high speed. This mechanism may be as simple as an FTP client pushing to a CDN FTP server. CDNs have re-architected for delivery via mobile wireless network providers. The BBN connects the PoPs together. CDNs Demystified – A Streaming Technology Primer 5 . A CDN’s performance is dependent on a number of factors: the number of PoPs they own. In some cases. content from the video supplier is physically moved and prepositioned onto the CDN. A non-CDN company may own dedicated links between cities that are not fully subscribed. but in many cases the push mechanism is located on a CDN customer control panel. reliability and performance of the CDN software that is used to deliver and manage content. The file and data transfer that occurs between PoPs usually transits over the BBN. A Backbone Network (BBN) is the system that CDNs use to connect PoPs. dedicated. The server types and roles are described below in the ―Elements of a CDN‖ servers in more than section. and may peer or lease access to these pipes. Frequently. The main value that CDNs provide is placing content in close proximity to the viewer requesting the content and reliable high-speed transfer of data between the PoPs.  Push strategies are characterized by a computer outside the CDN pushing content to the CDN. Inc. as long as an origin has been defined. however. Points of Presence (PoP) are a collection of servers that a Akamai has 84. these are dedicated private data pipes between PoPs.CDN CONTENT ONRAMP STRATEGIES There are two main strategies that are used to populate a CDN with customer content: push and pull. In this scenario.

though a physical server may serve multiple purposes.  Copyright © 2012 Elemental Technologies. it is stateful in that it uses one long running post request. In the case of live content.  Origin (Ingest) servers are the entry point to place content onto the CDN. or. FMS or Wowza. Inc. Edge Servers deliver content to the viewer’s client players. or possibly within their entire network. authentication credentials and encryption information is usually provided to the customer by the CDN. The purpose of these servers is to provide a fanned-out distribution of content from a single point or points within a PoP/CDN to all of the edge servers within that PoP.  Distribution Servers tend to be deployed within each geographical Point of Presence (PoP). and not necessarily an entire file. As previously stated. these are typically FTP sites. Below are some of the common roles and their functional descriptions. In addition to providing live and VOD content. there are usually publishing points defined in the media server. For VOD or HLS content. CDNs Demystified – A Streaming Technology Primer 6 . an HTTP web server. For stateful protocols such as RTMP or RTSP. logging. There are usually multiple distribution servers to provide failover. such as IIS. This caching is frequently chunks or segments of individual files. but in general the last/least requested cache object is the first to be removed.ELEMENTS OF A CDN Several elements comprise a CDN and they are effectively described by the roles they play in delivering video content. a CDN will have tens or hundreds of edge servers in a PoP. In the case of Microsoft Smooth Streaming. Typically. Some CDNs use multicast network delivery as a distribution system within a PoP. The publishing point. they offer client authentication. not all PoPs will play all these roles. access control. these can either be media servers. and many other functions related to the client’s interaction with the CDN. This information may also be obtained through the CDN’s configuration control panel. HTTP servers or HTTP upload functions from a UI control panel. The cache is tunable. The actual content that is served from an edge server may come from a variety of sources: o Software Cache – Recently requested content is usually cached within the edge delivery software that handles incoming requests. although it uses the stateless HTTP protocol. in the case of HTTP Live Streaming (HLS). Live encoders have to correctly define these entry points before they will be able publish live content to a CDN.

or in remote network storage. These requests should instead be funneled into a single request and proxied out through the edge servers. Origin pull servers are used by CDNs to retrieve content from a video supplier’s origin server in the case of a pull request. CDNs Demystified – A Streaming Technology Primer 7 . SAN Network Storage – Many CDNs have a SAN within a PoP that an edge server may use to request content. This type of storage may have an NFS or some other mount point. This is especially true of dedicated HLS edge servers. Network DVR Archive Servers are used to record live content and create an archive VOD representation for later viewing.o Local File System – Many CDNs will store recently requested files on the local disk file system. a CDN will remove content from an edge server if it is inactive. content will be removed after a defined period of time or inactivity. This shields the video supplier’s origin server from being overwhelmed by requests. This is where a video supplier will place content and it usually requires authenticated access. if a viewer joins a live event after the broadcast has started. These origins typically have to be defined in the video supplier’s CDN control panel so the CDN will know where to find particular content and how to authenticate it. o o  File servers are the near-line storage that CDNs use to hold content. o Video supplier origin servers are usually web or FTP servers outside of the CDN that reside on the video supplier’s network and are controlled by the video supplier. Similar to caching. Not all CDNs use local file disk storage. the last/least requested file is usually the first to be removed. CDNs use these as mezzanine storage devices for content supplied by customers. If a request is made for content that has been aged out. A key point here is that a flood of requests for an object not already within the CDN does not—or should not—generate a flood of requests to the video supplier’s origin server. Based on the CDN and individual customer policy rules. but use their edge servers in cache/proxy-only roles. they may use HTTP. In many cases. Origin Servers are typically of two types in any CDN implementation: customer origin servers and origin pull servers. NNTP or some other protocol for file request. it will make a request to a CDN origin server that will retrieve the file from the video supplier. In many cases. In many cases. The edge server will simultaneously retrieve the file from the CDN origin server and proxy it back to the requesting client. the CDN software will retrieve it from the file server. on disk. In this case. the origin server will also place the file into the CDN’s content management and inventory system. These servers are not usually accessible to customers of the CDN. they are able to rewind to the beginning or any other part of the live event. as long as it has already been delivered by the CDN. and place it back at the edge. A request for content a CDN does not have in storage will result in an origin pull server making a request to a customer origin server to retrieve this content and propagate it throughout the network.   o Copyright © 2012 Elemental Technologies. Inc. Origin Pull – If an edge server receives a request that it does not have in cache. Some systems provide DVR capabilities that allow viewing of the recorded segment before the live event is actually completed. This is usually an HTTP or FTP request.

Because of this.cdn. URL request resolvers accept a request.cdn. or many other rules to lead to a specific edge server. quality of service. CDNs provide critical infrastructure and play a crucial role in the global distribution of video content from encoding sources such as those supplied by Elemental. inventory availability.) These requests may be redirected based on geography. video supplier origins. Copyright © 2012 Elemental Technologies. The request resolver services the request for content as fast as possible by directing the request to an edge server that has the content and is physically closest to the client that is requesting the content. and can go a long way to impact a video supplier’s purchasing decision. log reporting definitions.ny1. Configuration Control Panel In the early days of the CDN industry. In an expanding video universe with an ever widening number of playback devices. As CDN software and customer-facing services evolved. cost of service. CDNs Demystified – A Streaming Technology Primer 8 . video suppliers increasingly rely on CDN technologies and/or services to effectively deliver video content to end users. all configuration and management was accomplished by back office service request systems similar to a phone company’s service provisioning system. such as videosupplier. CDNs provided control panels for customer access and account management. configurable guidelines for bandwidth and usage. content cache control. and many other attributes that are used to define a CDN’s account and content profile. content authentication. (Typically. The control panel is the visible user interface for the CDN. These are usually bandwidth and storage statistics that directly relate to billing.edge033/path/content. Inc. this tends to be the ―secret sauce‖ that differentiates CDNs and defines their performance. Video suppliers did not have the ability to directly manage their accounts and all changes were implemented through this service provisioning method.   CONCLUSION With a broad range of capabilities and service offerings. URL Request Resolvers are the front door of the CDN for all requests. Example account settings include live event definitions. which may result in a request to videosupplier. While the concept is relatively straightforward. network routing. CDN load.com/path/content. Analytics/Billing Control Panel Most CDNs today provide video suppliers with raw logging data and analytics to access and review usage metrics. there are many patents and lawsuits concerning request resolution.