WEBVTT

00:00:00.000 --> 00:00:03.440
On June 21st, 2022, a huge part of the internet

00:00:03.440 --> 00:00:07.240
went down worldwide because just one company

00:00:07.240 --> 00:00:11.440
screwed something up. Major services such as Discord, Fitbit, and Shopify

00:00:11.440 --> 00:00:16.880
were all inaccessible because of a mistake that Cloudflare made while upgrading their servers.

00:00:16.880 --> 00:00:22.040
But who the heck is Cloudflare? And why are they so important to the underlying infrastructure of the internet?

00:00:22.040 --> 00:00:26.040
Cloudflare is an American company that operates servers all over the world

00:00:26.040 --> 00:00:30.760
that provide services for a large number of clients, probably the most important service

00:00:30.760 --> 00:00:33.800
is their Content Delivery Network, or CDN.

00:00:33.800 --> 00:00:38.960
A CDN is exactly what it sounds like. It's a series of servers where Cloudflare's customers

00:00:38.960 --> 00:00:42.480
can store content like videos, music, or anything else.

00:00:42.480 --> 00:00:46.360
Because a CDN is distributed, a user at home that wants to pull up a video

00:00:46.360 --> 00:00:50.760
from their favorite streaming service that just made an incomprehensibly bad naming decision

00:00:50.760 --> 00:00:54.480
can get that video quickly and reliably from the closest server.

00:00:54.480 --> 00:00:57.800
And there's also redundancy, in case one or more nodes of the CDN

00:00:57.800 --> 00:01:01.720
go down for some reason. The Cloudflare CDN also provides security

00:01:01.720 --> 00:01:06.760
so they can protect clients from malware, DDoS attacks, and other intrusion attempts

00:01:06.760 --> 00:01:11.400
so websites don't have to build out all that security stuff on their own.

00:01:11.400 --> 00:01:15.600
Aside from being a CDN, Cloudflare also provides DNS services

00:01:15.600 --> 00:01:18.920
to a massive number of websites. And in case you don't know,

00:01:18.920 --> 00:01:23.720
DNS stands for Domain Name System. And it's what matches the typical web addresses

00:01:23.720 --> 00:01:26.880
you're familiar with to the numerical IP addresses

00:01:26.880 --> 00:01:30.280
your browser has to know in order to connect to the site.

00:01:30.280 --> 00:01:35.560
Those DNS records have to be stored somewhere so Cloudflare offers DNS hosting.

00:01:35.560 --> 00:01:39.720
And if you wanna use the Cloudflare network simply to access sites at home,

00:01:39.720 --> 00:01:46.000
you can do this by navigating here in Windows and setting your DNS server to 1.1.1.1.

00:01:46.000 --> 00:01:51.920
Cloudflare claims it's faster and more reliable than the DNS services provided by most ISPs.

00:01:51.920 --> 00:01:56.800
And although Cloudflare has expanded to provide other services like cloud-based software development

00:01:56.800 --> 00:02:01.320
and corporate security, their CDN and DNS offerings are what they're most known for.

00:02:01.320 --> 00:02:07.740
In fact, it's estimated around 20% of all internet traffic relies on Cloudflare in some way.

00:02:07.740 --> 00:02:12.160
But how did they get so big to the point that they're effectively a single point of failure

00:02:12.160 --> 00:02:16.480
for a huge portion of the internet? Cloudflare started aggressively expanding

00:02:16.480 --> 00:02:20.700
in the early 2010s. In fact, they opened 10 facilities worldwide

00:02:20.700 --> 00:02:26.880
in just one month back in 2012. And at the time, Cloudflare only had 32 total employees.

00:02:26.880 --> 00:02:30.040
That's less than us. They were able to do this partly

00:02:30.040 --> 00:02:34.080
because their business model wasn't to build out their own data centers from scratch

00:02:34.080 --> 00:02:39.960
and hire an army of workers to manage them. Instead, Cloudflare co-located their servers

00:02:39.960 --> 00:02:44.240
in existing data center facilities and managed everything remotely.

00:02:44.240 --> 00:02:49.640
In fact, the only thing the on-site staff at these facilities got was a very short set of instructions

00:02:49.640 --> 00:02:54.100
on how to plug in Cloudflare's equipment. This made Cloudflare an affordable solution

00:02:54.100 --> 00:02:57.980
that was also quite good at speeding up how website requests were processed

00:02:57.980 --> 00:03:01.220
as much of their equipment was located inside of data centers

00:03:01.220 --> 00:03:05.300
that were already being used as large network exchanges for the rest of the internet.

00:03:05.300 --> 00:03:10.380
But even with Cloudflare's decentralized nature, the fact that so much of the internet uses it

00:03:10.380 --> 00:03:13.380
spells big trouble when the network has a problem.

00:03:13.380 --> 00:03:18.760
The big outage that we mentioned at the beginning of the video, cut the capacity of requests the network could handle

00:03:18.760 --> 00:03:22.080
in half and all because a single line of code

00:03:22.080 --> 00:03:25.940
was misplaced during an update that was, ironically,

00:03:25.940 --> 00:03:28.840
supposed to make the network more reliable.

00:03:29.840 --> 00:03:33.440
Whoopsies. Although Cloudflare understandably vowed

00:03:33.440 --> 00:03:37.760
to not let this happen ever again, there was a somewhat similar incident back in 2020

00:03:37.760 --> 00:03:42.720
where during an effort to resolve a congestion issue, another single erroneous line of code

00:03:42.720 --> 00:03:47.120
shunted a massive amount of data to a single location in Atlanta,

00:03:47.120 --> 00:03:51.600
overloading it and taking down thousands of sites and services for 27 minutes,

00:03:51.600 --> 00:03:54.880
including League of Legends, whose player base naturally reacted

00:03:54.880 --> 00:03:59.320
in a empathetic and understanding way. They didn't like it.

00:03:59.320 --> 00:04:03.240
And thank you for understanding that it makes me very happy that you watched this whole video.

00:04:03.240 --> 00:04:06.600
Like it if you liked it, dislike it if you disliked it, check out our other videos

00:04:06.600 --> 00:04:10.480
and comment below with video suggestions. And also don't forget to subscribe and follow

00:04:10.480 --> 00:04:14.240
or I won't be as understanding.

00:04:14.240 --> 00:04:15.740
I'm just kidding, it's fine.
