Let me share what I understand about CDN. I’ll highlight features from a user’s point-of-view. This may help you decide on the kind of CDN suitable for your content delivery. The focus will be more on the right CDN service providers for video and audio deliveries.
CDN = Content Delivery Network.
A CDN helps bring our content to our users ( visitors ) from the CDN’s nearest caching server ( edge server ), also known as Point-Of-Presence (POP). As a result, our content ( video, MP3, static pages, dynamic pages ) are almost instantly delivered to users, faster than usual. For example, a video can be viewed very smoothly by users, with no visible buffering.
So the most important role of CDN is to speed up content delivery to our targeted users.
Say we hosted a video in a server in Canada. When the video is watched by a user in Sri Lanka, this video is cached ( kept ) inside the nearest regional caching servers, say in New Delhi. The next time around, when someone from Bangladesh or India or Pakistan or Sri Lanka want to view the same video, it would be loaded extremely fast to the user’s PC.
Based on what I’ve searched, most CDNs have multiple POPs in the US, Canada, South America, Europe, India and Asia Pacific ( Japan, Singapore, Hong Kong, Malaysia, Australia ). Some CDNs are focused only in Europe and North America.
By using a CDN, you save bandwidth and would not overrun the quota given by your web hosting provider. The bandwidth responsibility for the video delivery is taken over by the CDN provider. You have to pay for bandwidth usage to the CDN provider. They will deliver your content faster to your user.
There are many large retail CDN providers in the market namely – Amazon Web Services, MaxCDN, HP CDN, Rackspace CDN, CDN77 and GoGrid. There are also CDN resellers connecting multiple wholesale CDNs together, then packaging them into guaranteed zero-failure deliveries, at retail prices. One very good example is Turbobytes, basically a network technology company.
If you want to try a CDN, try Amazon Web Services, i.e. S3 for hosting your videos and Amazon CloudFront to deliver your videos. They give free usage for 12 months but they set some limits.
Take full advantage of the free period. Then stay on or move on to other services that meet your expectations and budget.
How best to choose a CDN?
It is best to choose a CDN which has it’s POP nearest to your Hosting Server. The very best if it is housed in the same Network Operations Centre, as your Hosting Provider. Blazing fast.
Everyday you’ll see more and more web hosting companies offering CDN packages as well. WARNING: Do not put all eggs in one basket. I won’t go for Web Hosting and CDN from the same company. This is the same principle as avoiding web hosting with the domain name registrar. Relationships can turn sour and when this happens it will get very messy. So to play it safe, have these services provided by 3 separate companies – CDN – Web Hosting – Domain Registrar.
These are other criteria to consider when choosing a CDN provider:
-> price based on usage and no extra monthly charges
-> the number of POPs globally
-> have POP nearest to the region of your target audience
-> ability to allow or deny user access based on Geo Locations
-> ability to allow or deny user access based on IP addresses
-> provide secure tokens for your content for RTMPe streaming
-> support RTMP & PSEUDO streaming playback
-> support RTMP or RTMPe for live streaming
-> support RTMPS streaming using SSL when needed
-> ability to stream media from any point of origin ( hosting of your choice )
-> ability to host your media content in their own storage as your point of origin
-> can stream important formats such as FLV, MP4 & MP3
-> automatically cache your media without you having to define them
-> let you select which cached content to purge
-> user-friendly control panel
-> responsive support staff
Let’s see the difference between RTMP Streaming, Http Pseudo Streaming and Http download.
RTMP = Real Time Messaging Protocol. Bits of video data are gradually streamed to the users’ video players embedded in the web page. RTMP supports playback as well as Live Video Streaming. Many Online Radio and TV Stations are using this streaming technology. Special Java servers such as Wowza, Flash Media Server and Red5 are required to enable RTMP. Despite being servers to stream FLV files, lately they also support MP4 file streaming. A definite advantage of RTMP is, the video is not cached in users’ temp folder.
HTTP Pseudo Streaming also known as Progressive HTTP Streaming. No special streaming server technology is required to do this. You only need flvx and h.264 modules plugged in by your web hosting company to web servers such as Apache, Nginx or Lighttpd. Hosting providers can easily get and add the modules for free upon request. Videos are cached progressively inside users’ temp folder and videos can start playing immediately as it is downloading. You can seek certain points of the video even before the buffering completes. Examples are YouTube and Bitgravity.
HTTP download is NOT streaming. The entire video must be completely downloaded to the user’s PC before it plays inside the video player embedded on the web page. Typically the hosting server storing the video ( point of origin ) do not have the necessary modules installed to support RTMP or Http Pseudo Streaming.
Not all CDNs provide the same services.
All CDNs support Http Download. Some CDNs support both Pseudo Streaming and RTMP streaming. Some support only one type of streaming. Be sure to ask them specific questions based on the criteria I listed earlier in this article.
Some CDNs do not support video streaming as part of their services, namely CloudFlare and Incapsula. They are specialized in supporting quick delivery of static and dynamic content as well as provide another layer of protection for web sites against bad bots, DDOS and hackers.
There are no issues in connecting web sites with both types of CDNs together. You’ll be getting the benefit of superquick media streaming features as well as gain the extra layer of protection. I tested and they worked pretty well together.
So be sure on what you want to do with your videos and match your needs with the right CDN service provider.