WEBVTT

00:00:00.240 --> 00:00:06.160
the internet protocol is the main set of rules that governs the exchange or

00:00:04.000 --> 00:00:10.800
transmission of data between devices on separate networks it's got two main jobs

00:00:08.720 --> 00:00:15.519
and for both of them an easy comparison can be made to the mail system so number

00:00:12.800 --> 00:00:18.400
one is addressing hosts imagine if everyone on earth just came up with

00:00:16.960 --> 00:00:22.240
their own idea of how they should go about sending an item to someone ideas

00:00:20.240 --> 00:00:25.920
like putting the return address inside the box for better personal security or

00:00:24.240 --> 00:00:28.960
sending out six of the same thing to everyone on a city block to ensure that

00:00:27.599 --> 00:00:33.840
at least one of them will reach the intended target may be well-intentioned

00:00:31.599 --> 00:00:38.320
but would create a ton of unnecessary overhead leading to inefficiency the

00:00:36.079 --> 00:00:42.960
internet protocol dictates the header format of a datagram or packet similar

00:00:40.879 --> 00:00:48.000
to the label on a package as well as the way the data payload is nested within it

00:00:45.200 --> 00:00:52.559
to improve efficiency number two is routing or predicting and selecting the

00:00:49.920 --> 00:00:56.960
best possible path for data transmission across network boundaries this function

00:00:54.640 --> 00:01:00.000
is mostly performed by routers and it's the equivalent of your parcel uh let's

00:00:58.640 --> 00:01:04.720
say it's heading from the west coast of the us to france reaching a courier hub

00:01:02.559 --> 00:01:08.799
in chicago where the decision gets made to forward it to new york then paris

00:01:06.880 --> 00:01:12.880
instead of letting it make stopovers in brisbane new delhi moscow and toronto

00:01:11.360 --> 00:01:16.240
along the way seems pretty straightforward right well

00:01:14.720 --> 00:01:21.680
actually we've got a small problem at the moment ipv4 the first non-experimental version

00:01:20.400 --> 00:01:26.640
of the internet protocol and a cornerstone of the internet as we know

00:01:23.920 --> 00:01:30.880
it has only received relatively minor revisions since its original development

00:01:28.720 --> 00:01:35.200
in the late 70s when the digital lifestyle we enjoyed today with all of

00:01:32.720 --> 00:01:41.439
these connected devices all around us was basically science fiction so it has

00:01:38.000 --> 00:01:44.720
some limitations that ipv6 was designed

00:01:41.439 --> 00:01:47.520
to deal with first up ipv4 allows for

00:01:44.720 --> 00:01:51.759
only about 4 billion unique addresses which might sound like a lot but once

00:01:49.600 --> 00:01:55.439
you do the math it's not enough for every device on earth to have its own

00:01:53.360 --> 00:01:58.320
address and without a unique address there's no way to ensure that a packet

00:01:57.200 --> 00:02:04.280
is being delivered to the correct destination ipv6 replaces ipv4 32-bit

00:02:02.719 --> 00:02:10.640
address with a 128-bit address that allows about 304

00:02:08.160 --> 00:02:15.760
trillion trillion trillion addresses enough for every person on earth to have

00:02:13.440 --> 00:02:20.640
billions of addresses for every device they own well hold on a second Linus 4

00:02:18.239 --> 00:02:26.160
billion is already not enough how did we make it this far great question aside

00:02:23.599 --> 00:02:29.920
from reusing ip addresses one of the main ways we've alleviated the need to

00:02:27.920 --> 00:02:34.640
have more of them is through network address translation this is kind of like

00:02:32.720 --> 00:02:38.640
apartment numbers two completely separate buildings can each have an

00:02:36.480 --> 00:02:41.080
apartment number 804 in much the same way that your pc at home can have the

00:02:40.319 --> 00:02:45.760
same 192.168 point something point whatever

00:02:43.360 --> 00:02:50.239
private i p address as your pc at work but their data never gets mis-delivered

00:02:48.239 --> 00:02:55.360
in the same way that those apartments have different public street addresses

00:02:52.640 --> 00:03:00.319
all those overlapping private ips are behind unique public ips from which all

00:02:57.920 --> 00:03:04.080
the traffic appears to originate well that sounds great Linus why can't we

00:03:01.840 --> 00:03:09.440
just keep doing that once again great question nat is not a bad thing and you

00:03:06.720 --> 00:03:12.640
can keep using it with ipv6 if you want it brings some real benefits to the

00:03:10.879 --> 00:03:17.680
table in terms of control and convenience if you were to switch ips

00:03:14.879 --> 00:03:21.519
for example but security is a mixed bag with its inherent firewall-like features

00:03:19.680 --> 00:03:26.480
considered good but the fact that it messes with packet tampering prevention

00:03:23.360 --> 00:03:28.560
protocols like ipsec considered bad and

00:03:26.480 --> 00:03:33.040
on top of that nat adds performance overhead and increases the complexity of

00:03:30.959 --> 00:03:38.640
peer-to-peer connections which are great for file sharing communication and much

00:03:35.360 --> 00:03:41.920
much more which leads into my next point

00:03:38.640 --> 00:03:43.440
simplicity having each device be able to

00:03:41.920 --> 00:03:48.080
address every other device on the network will improve performance

00:03:45.360 --> 00:03:52.720
directly and on top of that with ipv6 devices can auto configure themselves

00:03:50.560 --> 00:03:57.439
rather than relying on dhcp to get an address and the header data that must be

00:03:55.440 --> 00:04:01.519
included with every packet while actually larger to accommodate the

00:03:59.040 --> 00:04:04.560
longer addresses has a ton of extraneous stuff that's been cut out to reduce

00:04:03.040 --> 00:04:08.799
overhead while allowing more customizability for the future sounds

00:04:06.720 --> 00:04:12.319
great Linus but just like we predicted that we'd need 64-bit processors to

00:04:10.720 --> 00:04:17.000
address more memory we knew this was coming so why didn't we switch two five

00:04:14.480 --> 00:04:23.520
or even ten years ago the answer is compatibility trying to access a website

00:04:19.840 --> 00:04:25.600
that only runs ipv6 from an ipv4 system

00:04:23.520 --> 00:04:30.320
just wouldn't work there's no backwards compatibility built in but that said

00:04:28.080 --> 00:04:33.919
older hardware can sometimes be upgraded with new firmware for compatibility

00:04:32.160 --> 00:04:38.560
modern pc operating systems and even most phones out there have been ipv6

00:04:36.000 --> 00:04:43.520
capable for some time now so the issue actually isn't on our side us consumers

00:04:41.440 --> 00:04:47.759
no it's the internet service providers holding us back once again moving to

00:04:45.360 --> 00:04:51.840
purely ipv6 equipment or dual stack gear that can operate with both protocols is

00:04:49.759 --> 00:04:56.240
expensive doesn't offer an easily communicated benefit to joe average

00:04:53.680 --> 00:05:01.680
customer and most troubling of all removes the need for carrier-grade nat

00:04:58.720 --> 00:05:07.520
solutions that add overhead but also give your isp a great deal of visibility

00:05:04.240 --> 00:05:09.520
and control over the traffic in and out

00:05:07.520 --> 00:05:13.280
so why would they bother given how fond the average isp is of important stuff

00:05:11.360 --> 00:05:15.840
like maintaining net neutrality which i would encourage you to read up on

00:05:14.479 --> 00:05:19.440
because whether it seems important or not the net neutrality debate will have

00:05:17.680 --> 00:05:24.880
a profound impact on the way internet communication works in the future

00:05:21.759 --> 00:05:26.320
regardless of when we transition to ipv6

00:05:24.880 --> 00:05:29.360
speaking of reading up on things not everyone has time to sit down with a

00:05:28.080 --> 00:05:33.120
book and catch up on their reading and for those folks there's audible.com

00:05:31.280 --> 00:05:38.400
audible.com is the premier source for audiobooks online with a selection of

00:05:34.800 --> 00:05:39.759
over 150 000 titles they've got dry

00:05:38.400 --> 00:05:44.160
stuff like you just listened to for the last six minutes and just kick back and

00:05:42.080 --> 00:05:48.080
enjoy an opposite subtract love story stuff like one plus one by jojo moyes

00:05:46.639 --> 00:05:53.199
nothing to do with the phone by the way the best part is that if you head over to audible.com techwiki and try out

00:05:51.360 --> 00:05:57.199
their monthly membership you can get a free you should like put like a fancy

00:05:55.280 --> 00:06:00.960
graphic free with like little sparkles free audiobook right now just for

00:05:58.880 --> 00:06:03.840
signing up give it a shot thanks audible for sponsoring this video thanks to all

00:06:02.400 --> 00:06:08.800
of you for watching like if you liked it dislike it if you disliked it leave a comment with a suggestion for future

00:06:06.720 --> 00:06:13.120
fastest possible videos and as always don't forget to subscribe if you haven't

00:06:10.319 --> 00:06:13.120
already
