The TOFFEE Project
HOMEDOCUMENTATIONUPDATESVIDEOSRESEARCHDOWNLOADSPONSORSCONTACT


RESEARCH 》 Building my own CDN - Finally Completed - Update: 17-Dec-2017

Today I finally completed building my own private CDN. As I discussed so far in my earlier topics (Building my own CDN), I want to custom build the same step-by-step from scratch. And I don't want to for now use/buy third-party CDN subscriptions from Akamai, CloudFlare, Limelight, etc as I discussed earlier.

As you know The TOFFEE Project (or TOFFEE) is a fork of my TrafficSqueezer WAN Optimization project. I still have/own the TrafficSqueezer domain which is www.trafficsqueezer.org. But ever since I started the The TOFFEE Project fork (and the website), I did a direct domain redirect to the new registered www.the-toffee-project.org. But now recently I got a new hosting from GoDaddy, so once again I linked the old domain (i.e. www.trafficsqueezer.org) to that new hosting. Hence now I have a fresh initial welcome page in the www.trafficsqueezer.org mentioning about the project status. And it automatically redirects the users to the new The TOFFEE Project website (i.e. www.the-toffee-project.org, as you can see in the screenshot below). Other than this, the website is completely empty. Which means I can use the hosting space for other important situations like in this case to build my own private CDN for the www.the-toffee-project.org website.
01 Building my own CDN for TOFFEE website - empty TrafficSqueezer website [CDN]

Creating a new sub-domain to host my new CDN cdn.trafficsqueezer.org:
So I went ahead and created the new sub-domain cdn.trafficsqueezer.org in my GoDaddy portal (as shown below) to host the CDN within the same so that it is sort of isolated from the main website context. It also makes easy to track the GoDaddy cPanel Awstats and so on.
02 Building my own CDN for TOFFEE website - cdn.trafficsqueezer.org - sub-domain to host my new CDN
03 Building my own CDN for TOFFEE website - cdn.trafficsqueezer.org - sub-domain to host my new CDN

When I create this sub-domain, I have a choice, suppose if I have more websites, I can even instead create sub-domain names such as cdn-the-toffee-project-org and so on, so that this way we can have each CDN sub-domain created for a dedicated remote site. But in my case I would like to keep things simple at this point so I created for now a single sub-domain such as cdn.trafficsqueezer.org and hosted(copied) the images and other web-resources within the same.

So with this thing in place, I now changed my main website scripts so that they point these resources dynamically as per the mode I want. Such as:

  • Always CDN mode
  • Load-Sharing CDN mode
  • No CDN mode (or Disable CDN mode)

Unfortunately, for security reasons I am not interested to share this logic(my exact code). But anyways I hope you get the idea how it can be done. The Always CDN mode allows registered resources (images/scripts/etc) to get incorporated always via CDN for each page request. While the load-sharing CDN mode gives me the flexibility to use CDN resources fairly. And this way if I choose to host in other CDNs in future such as this, I can dynamically point to CDN of my choice dynamically in a sort of round-robin fashion. But for now since I have only one CDN, sometimes the images(and resources) will be served from CDN sources and sometimes it will be served locally via www.the-toffee-project.org server itself.

Last but not least I did the No CDN mode or Disable CDN mode as a precaution so that if something goes wrong or if the CDN site is down, the whole CDN stuff can be disabled. Even this can be automated by incorporating some sort of remote discovery and intelligent switchover to avoid any catastrophe!

So as you can see here are some few screenshots where at times some are getting fed via CDN and at times they are getting fed by www.the-toffee-project.org itself (i.e no CDN). Since it is still work in progress, to debug the same, I have incorporated this dynamic " [CDN]" string in the image title and image alt, so that it gives me a clue if the system is all working fine. And I should able to distinguish the image source.

Here are some of the screenshots. Notice the image title when I hover the mouse pointer above the same:

Image/Resource not fed via CDN (below):
04 Building my own CDN for TOFFEE website - cdn.trafficsqueezer.org - checking if the resource is fed via CDN

Image/Resource fed via CDN (below):
05 Building my own CDN for TOFFEE website - cdn.trafficsqueezer.org - checking if the resource is fed via CDN [CDN]

Image/Resource fed via CDN (below):
06 Building my own CDN for TOFFEE website - cdn.trafficsqueezer.org - checking if the resource is fed via CDN [CDN]

Image/Resource not fed via CDN (below):
07 Building my own CDN for TOFFEE website - cdn.trafficsqueezer.org - checking if the resource is fed via CDN [CDN]

And yes, like I discussed in my earlier CDN topic (How to check a website using CDN ?), you can do a view source of any of these pages (as shown below) just like Facebook, Twitter, etc, and get an hint whether a website is using CDN or not.
08 Building my own CDN for TOFFEE website - cdn.trafficsqueezer.org - check if a website is using CDN [CDN]

Conclusion:
Like I discussed in this case it is not so sophisticated or complex like subscription based CDNs like what you get via CloudFlare/Akamai and so on. But instead this is a pure private custom-built CDN. And kindly note, even CDN technology is a sort of (or a specific category of) WAN Optimization technology. But it is not a mundane WAN Optimization technology, instead it comes under one among the Internet Optimization Technologies.

At times I do offer consultation on this regard to my clients across the world. And hence in case if you are looking forward for any expert advice or any other consultation on this regard you can contact me via email provided in the contact page.



Suggested Topics:


Generic CDN


Building my own CDN

💎 TOFFEE-MOCHA new bootable ISO: Download
💎 TOFFEE Data-Center Big picture and Overview: Download PDF


Recommended Topics:

TOFFEE (and TOFFEE-DataCenter) deployment with VPN devices ↗
Saturday' 13-Mar-2021
In case if you need to deploy TOFFEE along with your existing VPN devices you can deploy the same as shown below. This will allow your VPN devices to encrypt your TOFFEE WAN Optimized network data. NOTE: Make sure about the VPN deployment topology done in the right order. Else TOFFEE (LAN side) may get VPN encrypted packets which may not be possible (and or difficult) to further optimize. Hence always make sure to deploy them in a topology suggested below so that TOFFEE devices are out of VPN tunnel.

TOFFEE-DataCenter Live Demo with Clash of Clans game data - 30-Aug-2016 ↗
Saturday' 13-Mar-2021
Today I have done a test setup so that I can able to connect my Android Samsung Tab via TOFFEE DataCenter. Below is my complete test topology of my setup. For demo (and research/development) context I configured TOFFEE DataCenter in engineering debug mode. So that I do not need two devices for this purpose.

TOFFEE (and TOFFEE-DataCenter) deployment in SD-WAN Applications ↗
Saturday' 13-Mar-2021
Software-Defined Wide Area Networking (SD-WAN) is a new innovative way to provide optimal application performance by redefining branch office networking. Unlike traditional expensive private WAN connection technologies such as MPLS, etc., SD-WAN delivers increased network performance and cost reduction. SD-WAN solution decouple network software services from the underlying hardware via software abstraction.

My sample Wireshark packet capture files for research ↗
Saturday' 13-Mar-2021
I have a huge repository (or collection) of sample Wireshark packet capture files for reference. I use them extensively for research and development of TOFFEE as well to understand various protocol PDUs and protocol standards. I personally collected various test captures via Wireshark during my test and experimental research setup during the course of TOFFEE development. Say if you are a student and learning Networking and or say VoIP data and VoIP packets, you can analyse my VoIP sample Wireshark captures. Or in other case assume you are doing some quick research (or development) and want to refer few handful of VoIP packets then you can download and analyse my sample packet capture files.

TOFFEE-Mocha Documentation :: TOFFEE-Mocha - Jitter feature ↗
Saturday' 13-Mar-2021

Timelapse Screen Capture of TOFFEE-DataCenter Network Acceleration - with new RRDtool graph support ↗
Saturday' 13-Mar-2021
Timelapse Screen Capture of TOFFEE-DataCenter Network Acceleration - with new RRDtool graph support



Demo TOFFEE_DataCenter WAN Optimization VM (in VirtualBox) Test Setup ↗
Saturday' 13-Mar-2021
Demo TOFFEE_DataCenter WAN Optimization VM (in VirtualBox) Test Setup

Building my own CDN - Google PageSpeed Insights - Update: 22-Jul-2016 ↗
Saturday' 13-Mar-2021
Ever since after I launched my new The TOFFEE Project website on 1-May'2016, I can see there is a steep increase in traffic. Soon after the launch when I monitored its Alexa rankings it was reporting about 12 Million or so. But once it is getting more and more traffic the Alexa rankings shot up and now currently it shows around 2 Million (as on 22-July-2016). Alexa is an excellent tool to monitor your overall website global ranking and indirectly its performance. Unlike Google Analytics which is bound one or other way into Google's SEO. Alexa gives you a second opinion about your website's growth.

TOFFEE-Butterscotch Bandwidth saver software development - Update: 28-Oct-2016 ↗
Saturday' 13-Mar-2021
Here is my first software development update of TOFFEE-Butterscotch. In my first TOFFEE-Butterscotch news update I have introduced about TOFFEE-Butterscotch research, project specifications, use-cases, etc. Introducing TOFFEE-Butterscotch Alerts: These are simple packet counters which corresponds to the filter type. For example if the incoming TCP-SYN packets are blocked then its corresponding alert counter will increment whenever such a packet arrives and gets filtered (dropped).

CDN Hosting ↗
Saturday' 13-Mar-2021
It is quite interesting that there are few web hosting firms are offering direct CDN based hosting services. Since it is a direct CDN based hosting, it is cheap, extremely easy or transparent CDN service. It is transparent, since each time you publish your content in the hosting web-server (origin server), it is immediately is in sync automatically in the user-serving CDN caching machines. Since the hosting vendor and the CDN vendor are all the same, it is also easy to use their services. There is no incompatibility issues, interoperability issues, and better integrated analytics, are all the benefits of CDN Hosting services.



Featured Educational Video:
Watch on Youtube - [171//1] 169 Q&A - Add additional HardDrive or storage space in Linux VirtualBox VM ↗

TOFFEE DataCenter WAN Optimization - Google Hangouts demo and VOIP Optimization ↗
Saturday' 13-Mar-2021
TOFFEE DataCenter WAN Optimization - Google Hangouts demo and VOIP Optimization

Building my own CDN - Finally Completed - Update: 17-Dec-2017 ↗
Saturday' 13-Mar-2021
Today I finally completed building my own private CDN. As I discussed so far in my earlier topics (Building my own CDN), I want to custom build the same step-by-step from scratch. And I don't want to for now use/buy third-party CDN subscriptions from Akamai, CloudFlare, Limelight, etc as I discussed earlier.

TOFFEE-Mocha Documentation :: TOFFEE-Mocha-1.0.32-1-x86_64 and TOFFEE-Mocha-1.0.32-1-i386 ↗
Saturday' 13-Mar-2021

Upgrading Ubuntu 17.10 to 18.04 via TOFFEE-DataCenter WAN Optimization Screenshots ↗
Saturday' 13-Mar-2021




TOFFEE hardware selection guide ↗
Saturday' 13-Mar-2021
When you build a WAN Optimization device with TOFFEE the entire packet processing (data optimization) takes place in software layer or in other words more precisely Operating System kernel space. However if you have any compression or encryption hardware accelerator hardware card the parts of the TOFFEE packet processing modules can be offloaded to hardware layer and thus improving its efficiency.



Research :: Optimization of network data (WAN Optimization) at various levels:
Network File level network data WAN Optimization


Learn Linux Systems Software and Kernel Programming:
Linux, Kernel, Networking and Systems-Software online classes [CDN]


Hardware Compression and Decompression Accelerator Cards:
TOFFEE Architecture with Compression and Decompression Accelerator Card [CDN]


TOFFEE-DataCenter on a Dell Server - Intel Xeon E5645 CPU:
TOFFEE-DataCenter screenshots on a Dual CPU - Intel(R) Xeon(R) CPU E5645 @ 2.40GHz - Dell Server