www.kentik.com Open in urlscan Pro
2a05:d014:275:cb00::c8  Public Scan

Submitted URL: https://go.kentik.com/ODY5LVBBRC04ODcAAAGLr43Ky3M4szX3st5hlQu7BResxk1luWhW0jKHWa5OeQT-hs57twzFLMNtXFthigrNLigJWPs=
Effective URL: https://www.kentik.com/blog/speeding-up-the-web-comprehensive-guide-content-delivery-networks-embedded-caching/?utm_sou...
Submission: On May 19 via api from US — Scanned from DE

Form analysis 1 forms found in the DOM

<form id="SIGNUP_FORM" __bizdiag="-1092773681" __biza="W___">
  <div height="auto" class="Grid-sc-1q8bbu3-0 iJKySI">
    <div class="Cell-sc-jz56hp-0 iKAuwH field" height="1"><input name="first_name" value="" placeholder="First Name" color="input.text" display="inline-block" font-weight="400" width="100%" class="Input__StyledInput-sc-69bngo-0 dUIEEK"></div>
    <div class="Cell-sc-jz56hp-0 iKAuwH field" height="1"><input name="last_name" value="" placeholder="Last Name" color="input.text" display="inline-block" font-weight="400" width="100%" class="Input__StyledInput-sc-69bngo-0 dUIEEK"></div>
    <div class="Cell-sc-jz56hp-0 iKAuwH field" height="1"><input name="user_email" value="" placeholder="Email" color="input.text" display="inline-block" font-weight="400" width="100%" class="Input__StyledInput-sc-69bngo-0 dUIEEK"></div>
    <div class="Cell-sc-jz56hp-0 iKAuwH field" height="1"><input name="company_name" value="" placeholder="Company" color="input.text" display="inline-block" font-weight="400" width="100%" class="Input__StyledInput-sc-69bngo-0 dUIEEK"></div>
    <div width="1" class="Cell-sc-jz56hp-0 enilyu field" height="1">
      <div class="Box-sc-c3svcl-0 hJpgsJ"><select required="" name="Country" color="input.text" display="inline-block" font-weight="400" width="100%" class="Input__StyledInput-sc-69bngo-0 Select__SelectInput-sc-1wdffjg-0 kHgrST bfVFWa empty">
          <option selected="" value="" disabled="">Country</option>
          <option value="United States">United States</option>
          <option value="Canada">Canada</option>
          <option value="-" disabled="">──────────</option>
          <option value="Afghanistan">Afghanistan</option>
          <option value="Aland Islands">Aland Islands</option>
          <option value="Albania">Albania</option>
          <option value="Algeria">Algeria</option>
          <option value="Andorra">Andorra</option>
          <option value="Angola">Angola</option>
          <option value="Anguilla">Anguilla</option>
          <option value="Antarctica">Antarctica</option>
          <option value="Antigua and Barbuda">Antigua and Barbuda</option>
          <option value="Argentina">Argentina</option>
          <option value="Armenia">Armenia</option>
          <option value="Aruba">Aruba</option>
          <option value="Australia">Australia</option>
          <option value="Austria">Austria</option>
          <option value="Azerbaijan">Azerbaijan</option>
          <option value="Bahamas">Bahamas</option>
          <option value="Bahrain">Bahrain</option>
          <option value="Bangladesh">Bangladesh</option>
          <option value="Barbados">Barbados</option>
          <option value="Belarus">Belarus</option>
          <option value="Belgium">Belgium</option>
          <option value="Belize">Belize</option>
          <option value="Benin">Benin</option>
          <option value="Bermuda">Bermuda</option>
          <option value="Bhutan">Bhutan</option>
          <option value="Bolivia, Plurinational State of">Bolivia, Plurinational State of</option>
          <option value="Bonaire, Sint Eustatius and Saba">Bonaire, Sint Eustatius and Saba</option>
          <option value="Bosnia and Herzegovina">Bosnia and Herzegovina</option>
          <option value="Botswana">Botswana</option>
          <option value="Bouvet Island">Bouvet Island</option>
          <option value="Brazil">Brazil</option>
          <option value="British Indian Ocean Territory">British Indian Ocean Territory</option>
          <option value="Brunei Darussalam">Brunei Darussalam</option>
          <option value="Bulgaria">Bulgaria</option>
          <option value="Burkina Faso">Burkina Faso</option>
          <option value="Burundi">Burundi</option>
          <option value="Cambodia">Cambodia</option>
          <option value="Cameroon">Cameroon</option>
          <option value="Canada">Canada</option>
          <option value="Cape Verde">Cape Verde</option>
          <option value="Cayman Islands">Cayman Islands</option>
          <option value="Central African Republic">Central African Republic</option>
          <option value="Chad">Chad</option>
          <option value="Chile">Chile</option>
          <option value="China">China</option>
          <option value="Chinese Taipei">Chinese Taipei</option>
          <option value="Christmas Island">Christmas Island</option>
          <option value="Cocos (Keeling) Islands">Cocos (Keeling) Islands</option>
          <option value="Colombia">Colombia</option>
          <option value="Comoros">Comoros</option>
          <option value="Congo">Congo</option>
          <option value="Congo, the Democratic Republic of the">Congo, the Democratic Republic of the</option>
          <option value="Cook Islands">Cook Islands</option>
          <option value="Costa Rica">Costa Rica</option>
          <option value="Cote d'Ivoire">Cote d'Ivoire</option>
          <option value="Croatia">Croatia</option>
          <option value="Cuba">Cuba</option>
          <option value="Curaçao">Curaçao</option>
          <option value="Cyprus">Cyprus</option>
          <option value="Czech Republic">Czech Republic</option>
          <option value="Denmark">Denmark</option>
          <option value="Djibouti">Djibouti</option>
          <option value="Dominica">Dominica</option>
          <option value="Dominican Republic">Dominican Republic</option>
          <option value="Ecuador">Ecuador</option>
          <option value="Egypt">Egypt</option>
          <option value="El Salvador">El Salvador</option>
          <option value="Equatorial Guinea">Equatorial Guinea</option>
          <option value="Eritrea">Eritrea</option>
          <option value="Estonia">Estonia</option>
          <option value="Ethiopia">Ethiopia</option>
          <option value="Falkland Islands (Malvinas)">Falkland Islands (Malvinas)</option>
          <option value="Faroe Islands">Faroe Islands</option>
          <option value="Fiji">Fiji</option>
          <option value="Finland">Finland</option>
          <option value="France">France</option>
          <option value="French Guiana">French Guiana</option>
          <option value="French Polynesia">French Polynesia</option>
          <option value="French Southern Territories">French Southern Territories</option>
          <option value="Gabon">Gabon</option>
          <option value="Gambia">Gambia</option>
          <option value="Georgia">Georgia</option>
          <option value="Germany">Germany</option>
          <option value="Ghana">Ghana</option>
          <option value="Gibraltar">Gibraltar</option>
          <option value="Greece">Greece</option>
          <option value="Greenland">Greenland</option>
          <option value="Grenada">Grenada</option>
          <option value="Guadeloupe">Guadeloupe</option>
          <option value="Guatemala">Guatemala</option>
          <option value="Guernsey">Guernsey</option>
          <option value="Guinea">Guinea</option>
          <option value="Guinea-Bissau">Guinea-Bissau</option>
          <option value="Guyana">Guyana</option>
          <option value="Haiti">Haiti</option>
          <option value="Heard Island and McDonald Islands">Heard Island and McDonald Islands</option>
          <option value="Holy See (Vatican City State)">Holy See (Vatican City State)</option>
          <option value="Honduras">Honduras</option>
          <option value="Hungary">Hungary</option>
          <option value="Iceland">Iceland</option>
          <option value="India">India</option>
          <option value="Indonesia">Indonesia</option>
          <option value="Iran, Islamic Republic of">Iran, Islamic Republic of</option>
          <option value="Iraq">Iraq</option>
          <option value="Ireland">Ireland</option>
          <option value="Isle of Man">Isle of Man</option>
          <option value="Israel">Israel</option>
          <option value="Italy">Italy</option>
          <option value="Jamaica">Jamaica</option>
          <option value="Japan">Japan</option>
          <option value="Jersey">Jersey</option>
          <option value="Jordan">Jordan</option>
          <option value="Kazakhstan">Kazakhstan</option>
          <option value="Kenya">Kenya</option>
          <option value="Kiribati">Kiribati</option>
          <option value="Korea, Democratic People's Republic of">Korea, Democratic People's Republic of</option>
          <option value="Korea, Republic of">Korea, Republic of</option>
          <option value="Kuwait">Kuwait</option>
          <option value="Kyrgyzstan">Kyrgyzstan</option>
          <option value="Lao People's Democratic Republic">Lao People's Democratic Republic</option>
          <option value="Latvia">Latvia</option>
          <option value="Lebanon">Lebanon</option>
          <option value="Lesotho">Lesotho</option>
          <option value="Liberia">Liberia</option>
          <option value="Libyan Arab Jamahiriya">Libyan Arab Jamahiriya</option>
          <option value="Liechtenstein">Liechtenstein</option>
          <option value="Lithuania">Lithuania</option>
          <option value="Luxembourg">Luxembourg</option>
          <option value="Macao">Macao</option>
          <option value="Macedonia, the former Yugoslav Republic of">Macedonia, the former Yugoslav Republic of</option>
          <option value="Madagascar">Madagascar</option>
          <option value="Malawi">Malawi</option>
          <option value="Malaysia">Malaysia</option>
          <option value="Maldives">Maldives</option>
          <option value="Mali">Mali</option>
          <option value="Malta">Malta</option>
          <option value="Martinique">Martinique</option>
          <option value="Mauritania">Mauritania</option>
          <option value="Mauritius">Mauritius</option>
          <option value="Mayotte">Mayotte</option>
          <option value="Mexico">Mexico</option>
          <option value="Moldova, Republic of">Moldova, Republic of</option>
          <option value="Monaco">Monaco</option>
          <option value="Mongolia">Mongolia</option>
          <option value="Montenegro">Montenegro</option>
          <option value="Montserrat">Montserrat</option>
          <option value="Morocco">Morocco</option>
          <option value="Mozambique">Mozambique</option>
          <option value="Myanmar">Myanmar</option>
          <option value="Namibia">Namibia</option>
          <option value="Nauru">Nauru</option>
          <option value="Nepal">Nepal</option>
          <option value="Netherlands">Netherlands</option>
          <option value="New Caledonia">New Caledonia</option>
          <option value="New Zealand">New Zealand</option>
          <option value="Nicaragua">Nicaragua</option>
          <option value="Niger">Niger</option>
          <option value="Nigeria">Nigeria</option>
          <option value="Niue">Niue</option>
          <option value="Norfolk Island">Norfolk Island</option>
          <option value="Norway">Norway</option>
          <option value="Oman">Oman</option>
          <option value="Pakistan">Pakistan</option>
          <option value="Palestinian Territory, Occupied">Palestinian Territory, Occupied</option>
          <option value="Panama">Panama</option>
          <option value="Papua New Guinea">Papua New Guinea</option>
          <option value="Paraguay">Paraguay</option>
          <option value="Peru">Peru</option>
          <option value="Philippines">Philippines</option>
          <option value="Pitcairn">Pitcairn</option>
          <option value="Poland">Poland</option>
          <option value="Portugal">Portugal</option>
          <option value="Qatar">Qatar</option>
          <option value="Reunion">Reunion</option>
          <option value="Romania">Romania</option>
          <option value="Russian Federation">Russian Federation</option>
          <option value="Rwanda">Rwanda</option>
          <option value="Saint Barthélemy">Saint Barthélemy</option>
          <option value="Saint Helena, Ascension and Tristan da Cunha">Saint Helena, Ascension and Tristan da Cunha</option>
          <option value="Saint Kitts and Nevis">Saint Kitts and Nevis</option>
          <option value="Saint Lucia">Saint Lucia</option>
          <option value="Saint Martin (French part)">Saint Martin (French part)</option>
          <option value="Saint Pierre and Miquelon">Saint Pierre and Miquelon</option>
          <option value="Saint Vincent and the Grenadines">Saint Vincent and the Grenadines</option>
          <option value="Samoa">Samoa</option>
          <option value="San Marino">San Marino</option>
          <option value="Sao Tome and Principe">Sao Tome and Principe</option>
          <option value="Saudi Arabia">Saudi Arabia</option>
          <option value="Senegal">Senegal</option>
          <option value="Serbia">Serbia</option>
          <option value="Seychelles">Seychelles</option>
          <option value="Sierra Leone">Sierra Leone</option>
          <option value="Singapore">Singapore</option>
          <option value="Sint Maarten (Dutch part)">Sint Maarten (Dutch part)</option>
          <option value="Slovakia">Slovakia</option>
          <option value="Slovenia">Slovenia</option>
          <option value="Solomon Islands">Solomon Islands</option>
          <option value="Somalia">Somalia</option>
          <option value="South Africa">South Africa</option>
          <option value="South Georgia and the South Sandwich Islands">South Georgia and the South Sandwich Islands</option>
          <option value="South Sudan">South Sudan</option>
          <option value="Spain">Spain</option>
          <option value="Sri Lanka">Sri Lanka</option>
          <option value="Sudan">Sudan</option>
          <option value="Suriname">Suriname</option>
          <option value="Svalbard and Jan Mayen">Svalbard and Jan Mayen</option>
          <option value="Swaziland">Swaziland</option>
          <option value="Sweden">Sweden</option>
          <option value="Switzerland">Switzerland</option>
          <option value="Syrian Arab Republic">Syrian Arab Republic</option>
          <option value="Tajikistan">Tajikistan</option>
          <option value="Tanzania, United Republic of">Tanzania, United Republic of</option>
          <option value="Thailand">Thailand</option>
          <option value="Timor-Leste">Timor-Leste</option>
          <option value="Togo">Togo</option>
          <option value="Tokelau">Tokelau</option>
          <option value="Tonga">Tonga</option>
          <option value="Trinidad and Tobago">Trinidad and Tobago</option>
          <option value="Tunisia">Tunisia</option>
          <option value="Turkey">Turkey</option>
          <option value="Turkmenistan">Turkmenistan</option>
          <option value="Turks and Caicos Islands">Turks and Caicos Islands</option>
          <option value="Tuvalu">Tuvalu</option>
          <option value="Uganda">Uganda</option>
          <option value="Ukraine">Ukraine</option>
          <option value="United Arab Emirates">United Arab Emirates</option>
          <option value="United Kingdom">United Kingdom</option>
          <option value="United States">United States</option>
          <option value="Uruguay">Uruguay</option>
          <option value="Uzbekistan">Uzbekistan</option>
          <option value="Vanuatu">Vanuatu</option>
          <option value="Venezuela, Bolivarian Republic of">Venezuela, Bolivarian Republic of</option>
          <option value="Viet Nam">Viet Nam</option>
          <option value="Virgin Islands, British">Virgin Islands, British</option>
          <option value="Wallis and Futuna">Wallis and Futuna</option>
          <option value="Western Sahara">Western Sahara</option>
          <option value="Yemen">Yemen</option>
          <option value="Zambia">Zambia</option>
          <option value="Zimbabwe">Zimbabwe</option>
        </select><svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 448 512" class="Select__Arrow-sc-1wdffjg-1 jevtHX" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg">
          <path
            d="M207.029 381.476L12.686 187.132c-9.373-9.373-9.373-24.569 0-33.941l22.667-22.667c9.357-9.357 24.522-9.375 33.901-.04L224 284.505l154.745-154.021c9.379-9.335 24.544-9.317 33.901.04l22.667 22.667c9.373 9.373 9.373 24.569 0 33.941L240.971 381.476c-9.373 9.372-24.569 9.372-33.942 0z">
          </path>
        </svg></div>
    </div>
  </div>
  <div class="Cell-sc-jz56hp-0 cjniXj form-terms" font-size="15" font-weight="normal" height="1">
    <p font-weight="300" color="body" class="Text-sc-1k90dzn-0 Paragraph-sc-1cpas98-0 iWKHLZ cAnJO">By completing this form, you agree to our<!-- -->
      <a href="/privacy-policy/" rel="noopener" target="_blank" class="Link__ExternalLink-sc-1xbeavq-0 RBWzv">Privacy&nbsp;Policy</a> <!-- -->and<!-- -->
      <a href="/terms-of-use/" rel="noopener" target="_blank" class="Link__ExternalLink-sc-1xbeavq-0 RBWzv">Terms&nbsp;of&nbsp;Use</a>.</p>
  </div>
  <div display="flex" class="Box-sc-c3svcl-0 Flex-sc-w0pd8x-0 iEcTil"><button role="button" type="submit" class="Button__StyledButton-sc-170eqz0-0 fOCOkq">Get Started</button></div>
</form>

Text Content

 * Why Kentik
 * Products
 * Solutions
 * Customers
 * Learn
 * Company

 * 
 * Blog
 * Login
 * TRY KENTIK

Back to Blog


SPEEDING UP THE WEB: A COMPREHENSIVE GUIDE TO CONTENT DELIVERY NETWORKS AND
EMBEDDED CACHING

Nina BargisenDirector of Tech Evangelism

--------------------------------------------------------------------------------

April 06, 2023

Network InfrastructureOTT

Table of Contents

--------------------------------------------------------------------------------

What is a CDN?What is embedding?Who are the players?The benefit of embeddingThe
downside of embeddingOffload – what to expectDifferent ways of placing content
and embedding – illustrated by typical traffic profiles from select Kentik
customersEnd-user mappingGetting end users to the closest cacheHow does end-user
mapping affect the benefits of embedding?Conclusion


TRY KENTIK

START A FREE, 30-DAY TRIAL.

CountryUnited StatesCanada──────────AfghanistanAland
IslandsAlbaniaAlgeriaAndorraAngolaAnguillaAntarcticaAntigua and
BarbudaArgentinaArmeniaArubaAustraliaAustriaAzerbaijanBahamasBahrainBangladeshBarbadosBelarusBelgiumBelizeBeninBermudaBhutanBolivia,
Plurinational State ofBonaire, Sint Eustatius and SabaBosnia and
HerzegovinaBotswanaBouvet IslandBrazilBritish Indian Ocean TerritoryBrunei
DarussalamBulgariaBurkina FasoBurundiCambodiaCameroonCanadaCape VerdeCayman
IslandsCentral African RepublicChadChileChinaChinese TaipeiChristmas IslandCocos
(Keeling) IslandsColombiaComorosCongoCongo, the Democratic Republic of theCook
IslandsCosta RicaCote d'IvoireCroatiaCubaCuraçaoCyprusCzech
RepublicDenmarkDjiboutiDominicaDominican RepublicEcuadorEgyptEl
SalvadorEquatorial GuineaEritreaEstoniaEthiopiaFalkland Islands (Malvinas)Faroe
IslandsFijiFinlandFranceFrench GuianaFrench PolynesiaFrench Southern
TerritoriesGabonGambiaGeorgiaGermanyGhanaGibraltarGreeceGreenlandGrenadaGuadeloupeGuatemalaGuernseyGuineaGuinea-BissauGuyanaHaitiHeard
Island and McDonald IslandsHoly See (Vatican City
State)HondurasHungaryIcelandIndiaIndonesiaIran, Islamic Republic
ofIraqIrelandIsle of
ManIsraelItalyJamaicaJapanJerseyJordanKazakhstanKenyaKiribatiKorea, Democratic
People's Republic ofKorea, Republic ofKuwaitKyrgyzstanLao People's Democratic
RepublicLatviaLebanonLesothoLiberiaLibyan Arab
JamahiriyaLiechtensteinLithuaniaLuxembourgMacaoMacedonia, the former Yugoslav
Republic
ofMadagascarMalawiMalaysiaMaldivesMaliMaltaMartiniqueMauritaniaMauritiusMayotteMexicoMoldova,
Republic
ofMonacoMongoliaMontenegroMontserratMoroccoMozambiqueMyanmarNamibiaNauruNepalNetherlandsNew
CaledoniaNew ZealandNicaraguaNigerNigeriaNiueNorfolk
IslandNorwayOmanPakistanPalestinian Territory, OccupiedPanamaPapua New
GuineaParaguayPeruPhilippinesPitcairnPolandPortugalQatarReunionRomaniaRussian
FederationRwandaSaint BarthélemySaint Helena, Ascension and Tristan da
CunhaSaint Kitts and NevisSaint LuciaSaint Martin (French part)Saint Pierre and
MiquelonSaint Vincent and the GrenadinesSamoaSan MarinoSao Tome and
PrincipeSaudi ArabiaSenegalSerbiaSeychellesSierra LeoneSingaporeSint Maarten
(Dutch part)SlovakiaSloveniaSolomon IslandsSomaliaSouth AfricaSouth Georgia and
the South Sandwich IslandsSouth SudanSpainSri LankaSudanSurinameSvalbard and Jan
MayenSwazilandSwedenSwitzerlandSyrian Arab RepublicTajikistanTanzania, United
Republic ofThailandTimor-LesteTogoTokelauTongaTrinidad and
TobagoTunisiaTurkeyTurkmenistanTurks and Caicos IslandsTuvaluUgandaUkraineUnited
Arab EmiratesUnited KingdomUnited StatesUruguayUzbekistanVanuatuVenezuela,
Bolivarian Republic ofViet NamVirgin Islands, BritishWallis and FutunaWestern
SaharaYemenZambiaZimbabwe

By completing this form, you agree to our Privacy Policy and Terms of Use.

Get Started
Table of Contents

--------------------------------------------------------------------------------

What is a CDN?What is embedding?Who are the players?The benefit of embeddingThe
downside of embeddingOffload – what to expectDifferent ways of placing content
and embedding – illustrated by typical traffic profiles from select Kentik
customersEnd-user mappingGetting end users to the closest cacheHow does end-user
mapping affect the benefits of embedding?Conclusion
Subscribe


SUMMARY

Content delivery networks are an important part of the internet, as they ensure
a short path between content and the consumers. The idea of placing CDN caches
inside ISPs networks was created early in the days of CDNs. The number of CDNs
with this offering is growing and ISPs all over the world take advantage of the
idea. This post explains how this works and what to look out for to do it right.

--------------------------------------------------------------------------------


WHAT IS A CDN?

Content distribution networks are a type of network that emerged in the 90s,
early in the internet’s history, when content on the internet grew “richer” –
moving from text to images and video. Akamai was one of the first CDNs and
remains a strong player in today’s market.

A high-level definition of a CDN is:

 * A collection of geographically distributed caches
 * A method to place content on the caches
 * A method to steer end users to the closest caches

The purpose of a CDN is to place the data-heavy content or latency-sensitive
content as close to the content consumers as possible – in whatever sense close
means. (More on that later.)

Most website publishers use CDN services to deliver their sites and applications
to ensure reliable and responsive performance for their end users. CDN services
just make sense. If a publisher in the U.S. has many visitors from Africa, it
isn’t efficient to be sending that content across multiple terrain and submarine
cables to reach the end user every time it’s requested. It makes logical sense
to store this content locally when first requested and then serve it to
subsequent African viewers locally. End users get a higher-quality viewing
experience, and it reduces expensive traffic on those backbone networks.


WHAT IS EMBEDDING?

The need to have the content close to the content consumers fostered the idea of
placing caches belonging to the CDN inside the access network’s network border.
This idea was novel and still challenges the mindset of network operators today.

We call such caches “embedded caches.” They are usually intended only to serve
end users in that network. These caches often use address space originating in
the ISP’s ASN and not in the CDN’s.


WHO ARE THE PLAYERS?

Online video viewership really increased the demand for CDN services. Internet
video consumption started in the late 1990s, and OTT streaming services have
accelerated the growth in online video consumption. In the early days,
specialized video CDNs such as Mark Cuban’s Broadcast.com (acquired by Yahoo)
and INTERVU (acquired by Akamai) served the market. By the early 2000s, CDNs had
to have a video delivery solution to compete. In 2023, work-from-home and
e-learning applications continue to drive video consumption growth.

The CDN market has only become more active. Traditional players like Akamai,
Lumen, Tata, and Edgio still generate a large share of their business from
traditional content delivery, but these services have become commoditized. For
these players to grow their business and compete with newer entrants like
Cloudflare, Fastly, and Stackpath, they are leveraging their distributed
infrastructure to offer a more diverse and specialized set of services like
security services and DDoS protection, high-performance real-time delivery
services, as well as moving into public cloud services.

Large content producers who use commercial CDNs often use multiple CDNs. This
supports different types of content, leverages different geographical strengths,
creates resilience, and, finally – means better leverage when negotiating
contracts, thanks to utilizing more than one provider.

Giant content producers like Netflix, Apple, Microsoft, Amazon, Facebook, and
Google have all built their own specialized CDN to support their core services.
Some also compete in the marketplace selling CDN services – including Amazon,
Google, and Microsoft. In 2023, CDNs are looking for ways to leverage their
investment in their distributed infrastructure by identifying high-growth
services traditionally offered by public clouds. CDNs are now offering storage
and compute services. Akamai recently closed on acquiring Linode to add cloud
compute to its service offerings.

The major CDNs that offer an embedded solution to ISPs are, among others:

 * Akamai
 * Netflix
 * Google
 * Amazon
 * Facebook
 * Cloudflare
 * CDN77
 * Microsoft
 * Apple
 * Qwilt

In the SIGCOMM ‘21 presentation, “Seven years in the life of Hypergiants’
off-nets,” Petros Gigis and team found that more than 4,500 networks globally in
2021 had embedded caches from at least one of the CDNs – a number that has
tripled from 2013 to 2021. Google, Netflix, Facebook, and Akamai are by far the
most widely deployed embedded caches, with almost all of the 4,500 networks
hosting at least one and often two or more of the four.


THE BENEFIT OF EMBEDDING

The benefit of the CDN is that the content served by the CDN can be placed
closer to the consumer. For the ISP, the benefit is primarily savings on the
internet edge – in the form of transit and capacity costs. Depending on the type
of embedded deployment, some ISPs can also save capacity on their internal
network. Traffic from CDNs rarely creates revenue for the ISP as most CDNs
prefer peering over buying transit from end-user ISPs, so it does become crucial
to use as little of the network as possible to deliver the traffic to consumers.


THE DOWNSIDE OF EMBEDDING

The challenge for ISPs is the added complexity of operating caches managed by
other networks inside their network border. On top of that, space and cooling
needs differ from what their own equipment needs. Complicating matters further
is that these embedded caches’ space and cooling needs differ from one CDN to
the next.

Another reported downside is that some embedded CDNs’ operational processes are
misaligned with the ISPs’ operational processes. Expectations of access to the
caches or speed in physical replacements are sometimes misaligned.


OFFLOAD – WHAT TO EXPECT

A common surprise for ISPs new to embedded CDN caches is that they rarely see
100% of the traffic from the CDN served from the embedded caches. There are
several reasons why we see some traffic from the CDN over the network edges.

To understand this, let’s examine the ways content is placed on the embedded
caches (or the caches in the CDN in general).


DIFFERENT WAYS OF PLACING CONTENT AND EMBEDDING – ILLUSTRATED BY TYPICAL TRAFFIC
PROFILES FROM SELECT KENTIK CUSTOMERS

A few CDNs – most prominently Netflix Open Connect, push the content to the
caches in the CDN. A frequent calculation determines which files should be
placed where and the system then distributes the files during low-demand hours,
providing two significant benefits:

 * The fill traffic runs on network connections outside of peak hours, lowering
   the strain on the ISP’s interconnection capacity.
 * The caches’ resources can be fully used to serve traffic in peak demand
   hours, allowing no resources to store new content files being used during
   these times.

For ISP partners, this means they will see the fill traffic during the night,
and if they agree to let their embedded caches fill from each other, the amount
of file downloads to the caches from outside the network is minimal, as you can
see in the example below.

The graph below shows the traffic profile of Netflix traffic for a network with
a well-dimensioned Open Connect deployment. The fill traffic over the network
border is the smallest spike, with the cache-to-cache fill having a more
considerable spike at night.

Notice the large spikes in the peak hours of traffic served from the embedded
caches. In the graph, we can see a traffic peak from outside of the network to
the end users during the peak hours. This long tail is the content that was not
placed on the embedded caches because the expected demand was not high enough.
The total catalog is too extensive for the amount of disk space in a typically
embedded cluster, so some content will need to be served from the larger POPs of
the CDN.



When the CDN uses pull to place the content, the end user’s request for content
triggers the content to be downloaded to the embedded cache. The traffic from
outside the network to the embedded caches peaks at the peak hour for the
content download to end users. Like before, a long tail of content is served
directly to the end users from outside the network. This is most often content
that the content owners decided wasn’t worth caching, as high demand was not
expected. It might be more dynamic content, such as content personalized for the
end viewer or with a specific security profile. Finally, some CDNs will serve
the file directly to the end user and then subsequently store it on the embedded
caches after the first request for future delivery.



So deploying embedded caches from the major CDN sources of the inbound traffic
can save ISPs significant traffic and capacity on the network edge. Not all the
traffic, but most of the traffic, can be moved away.

The next question that arises is where should an ISP deploy embedded caches?
Ideally, a cache would be placed at each location where the customers’ lines
connect to the IP network. This should remove most CDN traffic from the network
links, right?

Well, that depends on the network topology of the network but also on which CDN
and how that CDN maps the end users to a cluster.

Let’s look at the most common methods and how they affect the traffic flows from
the embedded caches to end users inside the network.


END-USER MAPPING


GETTING END USERS TO THE CLOSEST CACHE

Again we have Open Connect from Netflix standing out from most of the other
players. They heavily rely on BGP (Border Gateway Protocol, the protocol that
networks use to exchange routes) to define which cache an end user is directed
to.

BGP:

 * BGP is used to signal to a cache which IP ranges it should serve
 * A setup where all caches have identical announcements will work for most
   deployments since the next tie-breaker is the geolocation information for the
   end user’s IP address.
 * Prefixes are sent from the ISP to the caches.

• x.y.z.0/24 is announced to A
• x.y.w.0/24 is announced to B

1. Give me movie
2. Go to B and get movie
3. Give me movie
4. Movie

Open Connect is unique among the CDNs since they do not rely on the DNS system
to direct the end user to the suitable cache. The request to play a movie is
made to the CDN, who replies with an IP address for the cache that will serve
the movie without using the DNS system

Most other CDNs map end users to a cache by mapping the DNS server the end user
is using to request the content to a cache or a cache location.

The typical DNS-based flow for a content server by a CDN looks like this:

1. Where is site.com?
2. Where is site.com?
3. site.com is site.com.cdnsomething.com
4. Where is site.com.cdnsomething.com
5. site.com.cdnsomething.com is A for you
6. Site.com is A
7. Give me Site.com
8. Site.com

But how is mapping the DNS server to the cache or cache locations done? This is
where the individual CDNs add their own magic.

The mapping can take several different parameters into account. For example:

 * Latency: Measurements from the CDNs network, clients, and embedded caches
   create a latency map determining the closest cache for a given DNS server.
 * Connectivity to the ISP: Is the cache embedded, reached by private or public
   peering or transit?
 * Load: No CDN wants to direct a user to a cache that is already busy serving
   content, so the mapping takes the current load into account.

Note that this means that the mappings in the DNS system have quite a short TTL.

Some CDNs use anycast to direct the end user to the nearest cache. Announcements
and withdrawal of the anycast prefixes from the caches in the ISP are then used
for traffic management by the CDN.


HOW DOES END-USER MAPPING AFFECT THE BENEFITS OF EMBEDDING?

What does the end-user mapping mean for the traffic flows internally in the
ISP’s network in the case of more than one cache location? In the case of Open
Connect and similar BGP-based mappings, the ISP has optimal control if the IP
addresses used by the end users are regionalized. End users will then be served
by the caches in that region and only use others in the case of failure or
missing capacity. The fail-over caches can also be signaled with BGP, just like
you would do with a primary and backup connection to your transit provider.

If the address plan is not regionalized, all customers should be announced to
all caches. The geolocation of the end user’s IP address, and physical distance
will determine where the end users are sent. This works well for geographically
large networks but less so if you run an extensive network in a small area. In
that case, it is challenging to prevent traffic from crisscrossing all over the
network, and a better solution is to build a larger cache location in the center
of the network.

In the case of CDNs using DNS server mapping, the ISPs must run dedicated DNS
servers for each region where they want to build a cache location.


CONCLUSION

Slow page loads and jittery audio and video repel viewers. Without CDN
technology efficiently delivering internet content, we would be unlikely to be
able to read, listen, and watch the wide variety of content that’s available
online today – not without paying more for it or suffering from poor quality
experiences. Embedding caches from the CDNs into your network can help you
optimize the delivery and remove a lot of the strain of the large amounts of
traffic. Kentik can help you analyze and understand the impact of CDN traffic on
your network and whether embedding caches is for you. Please watch this
Networking Field Day presentation by Steve Meuse, a Kentik solutions architect,
for an overview of how Kentik can help you understand how OTT traffic and CDNs
impact your network.


EXPLORE MORE FROM KENTIK

Observing content delivery and OTT services
NETWORKING FIELD DAY: SERVICE PROVIDER 2
The value of performance mesh testing for ISPs, CDNs, telcos and cloud service
providers
Webinar
Unlocking the Power of Embedded CDNs: A Comprehensive Guide to Deployment
Scenarios and Optimal Use Cases
Blog Post
Kentik is the network observability company.
Get a Demo

844-356-3278


PRODUCTS

 * Core
 * Synthetics
 * Cloud
 * Edge
 * Protect
 * Service Provider Analytics
 * Firehose
 * Kentik Market Intelligence
 * My Kentik Portal
 * 
 * Kentik Platform
 * Plans and Pricing
 * Integrations
 * Global Agents
 * Product Updates
 * Documentation


USE CASES

 * Digital Experience Monitoring
 * Peering & Interconnection
 * Clouds & Hybrid
 * DDoS Detection & Network Security
 * Network Troubleshooting
 * Capacity Planning
 * Network Business Analytics
 * WAN & SD-WAN


CLOUD AND CONTAINER

 * Kubernetes Networking
 * Amazon Web Services
 * Google Cloud
 * IBM Cloud
 * Microsoft Azure


LEARN

 * Resource Library
 * Blog
 * Kentik Network Analysis Center
 * Kentipedia
 * Kentik Labs
 * Telemetry Now Podcast


NEW AND NOTABLE

 * The cloud shouldn’t be a black box: How to understand your network from data
   center to multi-cloud
 * Diving deep into submarine cables: The undersea lifelines of internet
   connectivity
 * Go Kentik today!


COMPANY

 * Why Kentik
 * Who We Are
 * Customers
 * Contact Us
 * Careers
 * Partners
 * Kentik Slack Community

Kentik now offers synthetic network monitoring — try it today.
 * Privacy Policy
 * Terms of Use
 * Legal
 * Site Map

Copyright © 2023 Kentik. All rights reserved.
We use cookies to deliver our services.
By using our website, you agree to the use of cookies as described in our
Privacy Policy.
I Agree