Проект TOFFEE
ГЛАВНАЯДОКУМЕНТАЦИЯОБНОВЛЕНИЕВИДЕОИССЛЕДОВАНИЕСКАЧАТЬСПОНСОРЫконтакт


RESEARCH 》 Building my own CDN - choosing a web-hosting to deploy my CDN - Update: 28-July-2016

Yesterday I have done extensive study about which alternative web hosting service provider (or hosting provider) to choose. The TOFFEE Project website is hosted on Inmotion Hosting. And so I am looking for alternate hosting provider to build my first CDN node. My plan is to make multiple sub-domains of my website such as cdn1.the-toffee-project.org, cdn2.the-toffee-project.org and point each of this corresponding subdomain(s) to various alternative web hosting servers geographically spread across the world.

Sometimes choosing the same vendor for multiple CDN nodes may result multiple servers existing in the data-center. And this becomes an issue if there is some catastrophic network disaster. In such events not only your whole website may go down, but all its other associated CDN nodes may also fail to work. And this will affect your SEO and the end user experience. Which is why exactly I need to choose alternate hosting providers.

After extensive search I found Inmotionhosting have an option to choose your choice of Data-centre. I was extremely happy to find this option and shocked that when I initially subscribed during The TOFFEE Project website launch, I never much noticed this option. So I quickly confirmed via whoismyip look-up that the TOFFEE Project website is on a US west coast data-centre server. I cross checked the same with Inmotion's customer support team. I have also discussed about my agenda of building my own research private CDN with the Inmotion's technical customer support professional and got few directions how to proceed next with respect to website's sub-domain configuration(s) to deploy the same.

So far I never faced any issues with Inmotion Hosting and so I decided to subscribe (or purchase) a new web-hosting plan exclusively for my first CDN subdomain and choose a data centre situated in East coast. Here is my Inmotion Hosting AMP Customer Account management portal panel:
1 my Inmotionhosting AMP Portal Control Panel

You can choose ADD SERVICES -> HOSTING to get this below page. You can now choose which plan you wish to purchase. In this case I chose Business -> Launch plan.

2 Inmotionhosting AddServices Purchase new Hosting plan Business Launch

Here is the page in which you can see the Data Center option to choose either East or West (i.e US East Coast Inmotion Data Center or West Coast Data Center).
3 Inmotionhosting Purchase new hosting plan select data centre east coast or west coast

As one can understand the East Coast data center will be good at serving content faster to regions like EU, Africa, Middle-east and so on. Whereas the West coast data center will be good at server content to Australia, Japan, Korea, Russia, China, Indonesia and so on. Currently my idea is not to make 1:1 replica disaster recovery contingency sites. But instead build a network to address load-sharing, redundancy, and so on. May be in future I may write scripts to extend these features. But for now, I was part of my content served via West Coast data center server, and part via East coast data center server.

But in case in future if I wish to build another CDN node, then in that case I may choose to purchase a web hosting subscription(s) from Bluehost, Host Gator or some one else. Since at the moment there are only two physical data centers in which Inmotion Hosting is deployed. I may even opt for an European Hosting provider or choose a Web Hosting service provider who got their servers deployed in Europe. These days GoDaddy, Bluehost, Host Gator, etc have good Indian presence and business focused towards Indian customers. In that case building one of the CDN nodes on a server situated in an Indian Data Center is not a bad idea either. A server in India can easily cater users situated in Srilanka, Bangladesh, Singapore, Hong Kong, Korea, Malaysia, China, Middle East, Europe and Africa than a server in US to these regions.

When I do a lookup of existing TOFFEE project website IP (hosted on Inmotionhosting West coast Data center server) and do a traceroute I can see the packets are being routed from:

  1. My ISP Provider ACT Broadband Bangalore India -> VSNL Bangalore India
  2. VSNL Bangalore India -> VSNL Mumbai India (west coast of India connecting Middle-east, Europe, etc) -> Paris
  3. Paris -> cr1.lax1.us.packetexchange.net (Level 3 Communications, California) -> biz197.inmotionhosting.com (where the the-toffee-project.org main website is hosted)
kiran@desktop-i7-5820k:~$ ping the-toffee-project.org
PING the-toffee-project.org (192.249.123.35) 56(84) bytes of data.
64 bytes from biz197.inmotionhosting.com (192.249.123.35): icmp_seq=1 ttl=50 time=258 ms
64 bytes from biz197.inmotionhosting.com (192.249.123.35): icmp_seq=2 ttl=50 time=260 ms
^C
--- the-toffee-project.org ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1000ms
rtt min/avg/max/mdev = 258.182/259.336/260.490/1.154 ms
kiran@desktop-i7-5820k:~$ traceroute 192.249.123.35
traceroute to 192.249.123.35 (192.249.123.35), 30 hops max, 60 byte packets
 1  192.168.0.1 (192.168.0.1)  1.838 ms  2.296 ms  2.823 ms
 2  10.254.0.1 (10.254.0.1)  21.223 ms  21.381 ms  21.448 ms
 3  83.20-broadband.acttv.in (202.83.20.73)  21.732 ms  21.881 ms  21.991 ms
 4  83.26-broadband.acttv.in (202.83.26.1)  22.209 ms  22.405 ms  22.534 ms
 5  83.20-broadband.acttv.in (202.83.20.66)  22.759 ms  22.868 ms  23.026 ms
 6  83.20-broadband.acttv.in (202.83.20.65)  23.799 ms  3.957 ms  22.269 ms
 7  14.141.145.89.static-Bangalore.vsnl.net.in (14.141.145.89)  22.471 ms 14.141.145.233.static-Bangalore.vsnl.net.in 
(14.141.145.233)  22.686 ms 14.141.145.89.static-Bangalore.vsnl.net.in (14.141.145.89)  22.907 ms
 8  172.31.29.245 (172.31.29.245)  23.836 ms  27.190 ms  27.294 ms
 9  ix-ae-0-100.tcore1.MLV-Mumbai.as6453.net (180.87.38.5)  29.271 ms  31.428 ms  34.467 ms
10  if-ae-5-6.tcore1.WYN-Marseille.as6453.net (180.87.38.126)  148.912 ms  149.721 ms if-ae-5-2.tcore1.WYN-Marseille.as6453.net 
(80.231.217.29)  151.971 ms
11  if-ae-8-1600.tcore1.PYE-Paris.as6453.net (80.231.217.6)  153.705 ms  155.361 ms  155.175 ms
12  if-ae-2-2.tcore1.PVU-Paris.as6453.net (80.231.154.17)  137.402 ms  135.045 ms  134.989 ms
13  80.231.153.66 (80.231.153.66)  137.898 ms  138.948 ms  140.065 ms
14  * * *
15  cr1.lax1.us.packetexchange.net (4.71.136.2)  275.698 ms  267.710 ms  265.135 ms
16  * * *
17  * * *
18  * * *
19  biz197.inmotionhosting.com (192.249.123.35)  267.329 ms  266.286 ms  265.492 ms
kiran@desktop-i7-5820k:~$

4 Inmotionhosting geolocation of westcoast datacenter server

Now when I do a lookup of some random Inmotionhosting East coast Data center server (ecbiz111.inmotionhosting.com) and do a traceroute I can see the packets are being routed from:

  1. My ISP Provider ACT Broadband Bangalore India -> VSNL Bangalore India
  2. VSNL Bangalore India -> VSNL Mumbai India (west coast of India connecting Middle-east, Europe, etc) -> Paris
  3. Paris -> INMOTION-HO.ear3.Washington1.Level3.net (4.79.22.110 inmotion-ho.ear3.washington1.level3.net Level 3 Communications, New York)
  4. INMOTION-HO.ear3.Washington1.Level3.net -> ecbiz111.inmotionhosting.com
kiran@desktop-i7-5820k:~$ ping ecbiz111.inmotionhosting.com
PING ecbiz111.inmotionhosting.com (69.174.114.2) 56(84) bytes of data.
64 bytes from ecbiz111.inmotionhosting.com (69.174.114.2): icmp_seq=1 ttl=44 time=212 ms
64 bytes from ecbiz111.inmotionhosting.com (69.174.114.2): icmp_seq=2 ttl=44 time=212 ms
^C
--- ecbiz111.inmotionhosting.com ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1000ms
rtt min/avg/max/mdev = 212.712/212.714/212.716/0.002 ms
kiran@desktop-i7-5820k:~$ traceroute ecbiz111.inmotionhosting.com
traceroute to ecbiz111.inmotionhosting.com (69.174.114.2), 30 hops max, 60 byte packets
 1  192.168.0.1 (192.168.0.1)  1.389 ms  1.933 ms  2.492 ms
 2  10.254.0.1 (10.254.0.1)  20.449 ms  20.560 ms  30.300 ms
 3  202.83.20.73 (202.83.20.73)  20.753 ms  20.934 ms  21.030 ms
 4  83.26-broadband.acttv.in (202.83.26.1)  21.312 ms  21.397 ms  21.556 ms
 5  83.20-broadband.acttv.in (202.83.20.66)  21.825 ms  22.538 ms  22.633 ms
 6  83.20-broadband.acttv.in (202.83.20.65)  22.932 ms  3.653 ms  19.847 ms
 7  219.65.110.5.static-bangalore.vsnl.net.in (219.65.110.5)  20.169 ms 14.141.145.241.static-Bangalore.vsnl.net.in 
(14.141.145.241)  20.364 ms 14.141.145.233.static-Bangalore.vsnl.net.in (14.141.145.233)  20.643 ms
 8  * 172.31.29.245 (172.31.29.245)  22.755 ms  24.048 ms
 9  ix-ae-0-100.tcore1.MLV-Mumbai.as6453.net (180.87.38.5)  29.003 ms  29.813 ms  31.940 ms
10  if-ae-9-6.tcore1.WYN-Marseille.as6453.net (80.231.217.77)  146.773 ms  148.003 ms  149.098 ms
11  if-ae-8-1600.tcore1.PYE-Paris.as6453.net (80.231.217.6)  151.600 ms  134.586 ms  136.810 ms
12  if-ae-2-2.tcore1.PVU-Paris.as6453.net (80.231.154.17)  135.878 ms  138.370 ms  138.476 ms
13  80.231.153.66 (80.231.153.66)  142.539 ms  142.862 ms  146.890 ms
14  * * *
15  INMOTION-HO.ear3.Washington1.Level3.net (4.79.22.110)  223.095 ms  224.963 ms  225.363 ms
16  * * *
17  * * *
18  ecbiz111.inmotionhosting.com (69.174.114.2)  214.186 ms  215.119 ms  212.394 ms
kiran@desktop-i7-5820k:~$

5 Inmotionhosting geolocation of eastcoast datacenter server

With this analysis you can see the difference in the routing hops in-between both Inmotion servers and the associated ping round-trip latencies. In this case the advantage is not that significant, but yet you can notice its a valuable study to decide how you can architect and build your private CDN Network. Assume if you have more users in the Middle East, it makes more sense to host your CDN node in a good European data center or some trusted middle east data center. Make sure the data center you choose (location where it is situated) is immune to any political instability and communal clashes for obvious reasons and maximum up-time!

For now I may soon subscribe a new Inmotion Hosting web-hosting account (and choose West Coast Data Centre during its subscription/purchase) and going to setup my first CDN node. You can follow my previous updates about be same below.

RESEARCH :: Building my own CDN - Minify Script files - Update: 23-July-2016
RESEARCH :: Building my own CDN - Google PageSpeed Insights - Update: 22-July-2016

Here is my live video log of the same:



Suggested Topics:


Generic CDN


Building my own CDN

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


Рекомендуемые темы:

TOFFEE Documentation :: TOFFEE-1.1.24-3-rpi2 ↗
Saturday' 13-Mar-2021
Here is my VLOG Youtube video of the same which includes details about version release notes, future road-map and so on. The TOFFEE release is highly optimized and customized for hardware platforms such as x86-64 based Intel NUC and other Intel mobile computing platforms such as laptops and so on. This version (or release) is not suited and so not recommended to be used for high-end desktop and server hardware platform.

Riverbed and Silver Peak WAN Optimization vs TOFFEE-DataCenter (TOFFEE and or TrafficSqueezer) - FAQ ↗
Saturday' 13-Mar-2021

TOFFEE-Mocha WAN emulator Lab deployment and topology guide ↗
Saturday' 13-Mar-2021

TOFFEE-Mocha WAN Emulator Jitter Feature ↗
Saturday' 13-Mar-2021

First TOFFEE-Butterscotch Code Release ↗
Saturday' 13-Mar-2021
TOFFEE-Butterscotch is a variant of TOFFEE can be used to save and optimize your Home/SOHO Internet/WAN bandwidth. Unlike TOFFEE (and TOFFEE-DataCenter) TOFFEE-Butterscotch is a non peer-to-peer (and asymmetric) network optimization solution. This makes TOFFEE-Butterscotch an ideal tool for all Home and SOHO users.

Grid Hosting vs CDN Hosting ↗
Saturday' 13-Mar-2021



Introducing TOFFEE-Butterscotch - Save and Optimize your Internet/WAN bandwidth ↗
Saturday' 13-Mar-2021
TOFFEE-Butterscotch yet another variant of TOFFEE can be used to save and optimize your Home/SOHO Internet/WAN bandwidth. Unlike TOFFEE (and TOFFEE-DataCenter) TOFFEE-Butterscotch is a non peer-to-peer (and asymmetric) network optimization solution. This makes TOFFEE-Butterscotch an ideal tool for all Home and SOHO users.

My Lab Battery Purchase and Service logs for Research ↗
Saturday' 13-Mar-2021
Here is a complete log of my lab battery purchase, service record which I maintain in Google drive. These I use for my home (or my family generic use) as well as a part of my home lab. I maintain a detailed log this way to monitor the failure rate of these batteries. This will allow me to select a specific brand/model which has higher success rate and to monitor any premature failure/expiry. The service log helps me to monitor and schedule the next service routine so that I can maintain these batteries in tip-top condition.

TOFFEE-Mocha Documentation :: TOFFEE-Mocha-1.0.14-1-rpi2 - Raspberry Pi WAN Emulator ↗
Saturday' 13-Mar-2021

Introducing TrueBench - a high resolution CPU benchmarking system ↗
Saturday' 13-Mar-2021
TrueBench is an unique open-source benchmarking system in which the core system performance and efficiency parameters are measured at extreme high resolution in the order of several million/billion µ-seconds for a given specific task. TrueBench is a part of The TOFFEE Project research. With TrueBench Raspberry Pi 3, Raspberry Pi 2B, Raspberry Pi 2 and other embedded SoC devices are benchmarked and you can do a comparative analysis with standard mainstream x86 devices.



Featured Educational Video:
Watch on Youtube - [8613//1] x254 Kernel Init Code without Kernel Module - Kernel Programming Tip #linode ↗

Setting up a WAN Emulator within VirtualBox ↗
Saturday' 13-Mar-2021

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

Network MTU research and optimization of WAN Links ↗
Saturday' 13-Mar-2021
Network MTU research and optimization of WAN Links

Introducing TOFFEE-DataCenter ↗
Saturday' 13-Mar-2021
TOFFEE TOFFEE Data-Center is specifically meant for Data Center, Cluster Computing, HPC applications. TOFFEE is built in Linux Kernel core. This makes it inflexible to adapt according to the hardware configuration. It does sequential packet processing and does not scale up well in large multi-core CPU based systems (such as Intel Xeon servers, Core i7 Extreme Desktop systems,etc). Apart from this since it is kernel based, if there is an issue in kernel, it may crash entire system. This becomes a challenge for any carrier grade equipment (CGE) hardware build.




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).



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


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