-
35C3 preroll music
-
Herald Angel: Welcome everybody to this
-
talk, "How does the Internet work?" And
our speaker is Peter Stuge and I'm very
-
happy that he is here to explain to all of
us how the infrastructure of the Internet
-
really works. I am pretty sure we will all
learn a lot today. Please give a big and
-
warm round of applause for Peter Stuge.
applause
-
Stuge: Thank you. Thank you very much.
Thank you for being here. This is amazing.
-
Translation into French, wow. So I want to
talk about how the Internet works. And I
-
try to, try to... yeah, try to shine some
light on all the technologies that are
-
involved when we use the Internet every
day. So, why this talk? Some motivation
-
first, then a little bit of brief
background just how the Internet got
-
started. And then we get into the details.
So what actually happens between the web
-
browser and the website, that's the
starting point. So in the description I
-
listed things from bottom up, so from the
very low level packet stuff and through
-
the various layers of the network stack up
into the applications. And that's the
-
building blocks part, but I inserted this
overview first, what is actually going on
-
between the browser and the website
because that's what most people already
-
know and use a lot. Some parts, well, some
details about the different protocols and
-
in the end some recommendations for
further talks, if you find these topics
-
interesting. So the reason I want to give
this talk is to talk about how does the
-
Internet work, right? The mechanisms that
we use all the time... but aren't
-
mentioned very much. So they are sort of
obscured or... well I don't know if hidden
-
is the right word but we wouldn't.. we
don't experience the network itself very
-
much, right? We experience the various
services that we use and they, the
-
services, they try their hardest to keep
us interested, to tickle our imagination
-
and... I think it's dangerous to not talk
a little bit about the network every now
-
and then. And to think about the network,
and to actually fight for a public network
-
that is available to all and equal. Also
neutral. If we focus on the service
-
providers alone then they're going to be
deciding what we can do with the network.
-
But the point of, or the great thing
about, how the Internet is neutral today
-
is that we're all connected or we could
all connect to each other. We don't
-
really have to use these service
providers. We tend to. This is somehow a
-
human nature to sort of go towards
centralization and monopolization. But the
-
Internet is a tool that would allow us to
try more variants or other kinds of
-
structures. And we need to be aware of
that and the importance of net neutrality.
-
If we don't talk a bit about the network
we might lose it. So. How did it all get
-
started? In 1970, then ARPA, they started
the ARPANET. So ARPA back then is this is
-
now DARPA. That's the Defense Advanced
Research Projects Agency. They develop
-
technology for the U.S. military. And they
did back then as well. So the ARPANET was,
-
as the quote says, from this very very old
document, that the objective is to get all
-
their suppliers connected into a network
together, and being able to exchange
-
information so that they can, I guess,
make progress more quickly, more
-
efficiently. Right? Now it's something
else. I think that's good. So let's let's
-
look at what happens between the browser
and the web site. So we have a person
-
using a laptop and they have a browser and
they type in a web address.
-
"events.ccc.de", for example. To read the
blog posts, the latest blog posts about
-
the Congress. So then the browser really
does two different things first of all. To
-
get, to show this page. So first of all it
has to ask for the the way to reach this
-
website that we want to reach. Computers,
they don't deal very well with names or
-
text. At least not the network part of
computers or systems. So there is this
-
translation somehow like a phonebook, I'll
get back to that in a bit, called DNS,
-
which is used primarily... it has a few
other uses as well, but it's used
-
primarily to get from this name that we
entered, "events.ccc.de", that we can also
-
somehow easily remember, to the network
address. The IP address of this web site.
-
So that's part one. And it says System
DNS because the browser doesn't do all of
-
this phone book lookup itself. It can rely
on the operating system to take care of
-
this. Unfortunately. So that's the
parentheses that's what the operating
-
system is doing its using a few protocols
UDP, IP and that becomes a network packet.
-
We'll get back to those in just a little
bit. So once the browser has the the
-
network address the IP address of this
website it creates a connection. So it
-
contacts the web server and it uses this
set of protocols. So it first uses IP to
-
reach the IP address of the server and in
particular it uses TCP for this connection
-
type, we'll get back to those in a little
bit, as well what what their properties
-
are. And on top of that the browser then
uses the HTTP protocol. We'll see an
-
example of that in the very end. How or to
get to request the the web page that we
-
wanted to see. And that's all happening
on the laptop in the browser and part in
-
the operating system that we're using
whatever that might be. Then there's of
-
course this long chain, or sometimes not
so long, but usually several several
-
machines along the way, routers, we might
have a wireless router at home or in a
-
coffee shop or here at Congress, and
beyond that there is certainly there are
-
certainly some more routers along the way
from or between our laptop, my laptop, and
-
the destination that I want to contact.
So all of these routers they receive some
-
packets, they look at the addresses, where
it's going, in particular, and then sends
-
it along its way. So they're they're just
forwarding packets all all day long.
-
Finally at the destination on the web
server there are also two parts. So first
-
of all the request that was sent by the
browser is received. It goes through these
-
these different layers, different
protocols, and the website server
-
software, it looks at the request and it
says OK somebody wanted the first blog
-
post, then I'll send that right back the
same way that I received the request, and
-
that's part two. So returning the response
to this request, and it goes all the way
-
through the routers the same path but in
the reverse direction to the laptop. So
-
let's let's look at all these different
building blocks. All right. So let's start
-
with the small smallest one in the network
packet. I talked about packets going back
-
and forth, so the packets, or a packet, is
sort of the atom on the network--it's the
-
smallest useful unit that is sent or
processed by the network. I think a good
-
way to explain packets is with regular
postcards that you can send with mail,
-
because their size, their maximum allowed
size, is pretty much standardised. You
-
can't send a postcard which is one meter,
right? And that's the same with the
-
network packets, you can't send
arbitrarily large network packets. One
-
pretty common maximum size is 1500 bytes
or roughly characters. So just to give an
-
idea of of how fairly small the packets
are actually and even that might, I don't
-
know do, 1500 characters fit on a
postcard? No I guess not, I think that's
-
too much. So maybe the packets are a
little bit larger than postcards, but
-
still the analogy is pretty good because
you send them out and and there's very
-
little, there's a little bit of structure,
like there's a stamp perhaps, and a
-
recipient address but that's pretty much
it. So what you what you write on the
-
postcard on the on the other side is
really up to you and it's the same with
-
the packets, they can contain anything,
but if you write in the language that the
-
receiver doesn't know, then they're going
to receive the packet and then actually
-
just drop it because they don't know what
you're trying to tell them. So packets,
-
they are sent and received through network
interfaces. This is an Ethernet cable LAN
-
port, or a Wi-Fi antenna, or maybe a 3G
modem if you're on the go out and about
-
and your cell phone does this of course as
well right. The cell phone has Wi-F if
-
you're in a coffee shop maybe, or it has
3G if you're in the subway or on the tram.
-
And one interesting thing, or where the
comparison to the postcards doesn't really
-
fit anymore, is that network interfaces,
they can easily pass millions of packets
-
in a single second. So it can be can be
quite a lot of information going through
-
especially if you have a good internet
connection like here at Congress. So then
-
the next step or sort of if you start
looking at OK what can we put on the
-
information side of the postcard, right,
where where we can put any message we
-
want. For this talk I'm only going to
focus on IP version 4. I know it's it's
-
old and legacy and we really shouldn't be
using it still but it is, it's dominant so
-
far, it won't be forever, but so far it's
quite common. And I think it's something
-
that most of us have at least seen when
setting up the Wi-Fi or the new Internet
-
connection, right? This IP address that I
put up on the slide is maybe the most
-
common IP address there is, right, for the
for the new wireless router. These IP
-
addresses they consist of the four numbers
and they are the four numbers. They range
-
from 0 to 255 and then there's now four of
them and with dots in between is just how
-
we write them. This is an efficient way
for machines to identify themselves. But,
-
the reason IP version 4 isn't so great
anymore is that it's quite a small number
-
of addresses. So it turns out that the
Internet is pretty popular and worldwide
-
the addresses have run out or are running
out. There aren't enough addresses for all
-
the devices that are actually
participating or somehow connected to the
-
Internet. IPv6 will solve this. Let's see.
Maybe maybe we'll live to experience that.
-
So what is what is a network then? There
are different kinds of networks. I've
-
written physical networks and logical or
abstract networks. Physical network is
-
cabling, right? If you have some kind of
connection from your Internet service
-
provider that goes to your wireless router
or if you have a LAN setup like in the
-
hack center with a switch and lots of
cables to each, one cable to each
-
computer, that's a physical network and
that's a tangible thing right. That's
-
something we can we can touch and we can
modify it with our hands and so on. But
-
then there are also and that's that's
certainly one network type and another
-
equally valid network type is the logical
network, or as I also call it the abstract
-
network, which is defined only by the
addresses used by some set of computers
-
that are communicating together. So here's
an example of an IP network that might be
-
used with the wireless router and that has
the IP address up on top right. And the
-
there's sort of a pattern right. The first
three digits are the same. And that's the
-
network address. And the very last part is
zero with this slash 24. Meaning that 24
-
first bits of the 32. So now it's
technical maths and binary and sorry, but
-
essentially the 24 means the first three
numbers are always the same. And within
-
this logical network, so within this group
of computers or systems that can
-
communicate with each other, only the very
last digit will change. And as long as
-
this is the case we don't need a router,
yet. We can--all these computers or all
-
these systems--they can communicate
directly with each other on the local
-
network or on a Wi-Fi or or whatever. And
the slash 24 (/24) and with the
-
255.255.255.0 that's just two different
ways to express exactly the same thing. So
-
where do these IP addresses come from and
how, who has them, and so on? So if we get
-
a wireless router then we have some IP
addresses. But me and my friend we both
-
have the same perhaps IP addresses because
we have a wireless router from the same
-
supplier. Right. And this is a little bit
of a special case. Those aren't Internet
-
IP addresses. They're used only very
locally. So only in one home network, only
-
in one company network, perhaps. The
public IP addresses are the ones that are
-
on the outside of this wireless router
that I got, and the wireless router
-
typically only has one. Some Internet
providers give you a few but it's very
-
easy to have a lot more devices in your
home or in your office than public IP
-
addresses that you get from your Internet
provider. So the IP addresses, they are
-
assigned to the Internet providers, or the
other way around, Internet providers they
-
apply for some range of some number of IP
addresses. And here in Europe there is an
-
organisation called RIPE in charge of
allocating a block of IP addresses to the
-
Internet companies that are actively
connecting to other Internet companies and
-
maybe are also your Internet providers and
mine. So and RIPE they have, they of
-
course have colleagues in different parts
of the world. So I think there are four or
-
five, maybe even six of the RIR
organizations, the regional network
-
centers. They assign IP address blocks to
the Internet companies, and by Internet
-
company I don't only mean Internet
providers that we use at home and at work,
-
but also really any larger company that
has a service available on the Internet.
-
So all the streaming sites that you can
imagine, all the, most, well several large
-
just websites that are used every day will
also have their own IP address range and
-
will be active in finding different ways
to connect to the Internet providers so
-
that the end users can have as good an
experience as possible when they're
-
visiting there or using their services. So
I talked about the Internet companies,
-
they are trying to find good ways to
connect to each other or to make it
-
possible for users with one Internet
company to reach either users at another
-
Internet company or some service provided
by some Internet company. And that's,
-
that's the routing that's going on, both
in the wireless wireless router at home
-
but just as well and and even more so in
all of these routers on the Internet that
-
are handing packets back and forth. So
starting with the wireless home router, it
-
typically has one local network. At least.
It might have more. So I had a home router
-
that had both the regular Wi-Fi network
and I was also able to configure a guest
-
network or guest password. So that's
actually two. It's Wi-Fi, so it's not
-
really so intuitive, but those are two
separate physical networks, because if
-
you're connected to one you can't
communicate directly with the other
-
network without a router. Now there's some
chance that the wireless router will do
-
this, will enable this communication, but
it's not for sure and it's not it's not
-
certain. And in fact it's more likely that
it won't work because this guest access,
-
you're supposed to be able to give that to
somebody who's just visiting and maybe you
-
don't want them to access your printer or
your storage cabinet or whatever. Right?
-
So it's quite likely that this guest
network doesn't get access to the main
-
network. So two different networks, even
though it's the same the same radio waves
-
or the same air that's carrying the radio
waves but the key property by the, or with
-
a wireless or a home router, is that it
almost always only has a single Internet
-
connection, so it has a single connection
to some Internet provider or in in the
-
direction of the Internet. Typically
that's that's the telco. But in some cases
-
there's even, especially in the US,
there's the situation where the telco or
-
the Internet provider is also a content
service provider. And that's a pretty bad
-
situation. In particular if you have no
options, no choice. So we have the home
-
router with a single connection towards
the Internet to the Internet provider.
-
Let's compare that with the Internet
routers that are further out on the
-
Internet and operated by the many
different Internet companies. They will
-
similarly have one or more local networks
that belong to them the same way that the
-
wireless network belongs to the home
router or wireless company, or sorry an
-
Internet company or an internet
organization, let's say like the CCC as
-
well, it has some some equipment and
servers with the events.ccc.de server for
-
example, is part of the CCC slice of the
Internet, and the router that's
-
responsible for all of CCC's networks is
responsible for. Also this IP segment
-
where the web servers. Now the big
difference here is that those Internet
-
routers, or the routers that are further
out on the Internet than our home routers,
-
they typically connect to at least two but
usually many more other Internet routers.
-
Exactly how is it different in every
location. There are some norms and some
-
common topology is but this is... so the
connections that exist are determined by
-
by peering agreements between the Internet
companies and their Internet organizations
-
there. They can of course have agreements
with whoever. So it's not so easy to tell
-
them beforehand what a particular
organization, how a particular
-
organization, will do peering. This is an
interesting topic. There are some more
-
talks on this as well that I'm referring
to later. One, at least one model, is to
-
have a site. Some data center somewhere
where an Internet exchange is running. So
-
this is an organization whose sole purpose
is to enable many different Internet
-
companies or Internet organisations to
somehow make their way there, put some
-
cables to this data center, and all
connect together and be able to exchange
-
traffic between each other efficiently and
maybe even at no cost. That's an
-
interesting topic because there are so
many different business models for the
-
peering agreements. So the Internet
exchanges is one model. There's a handful
-
of them in Germany and that's about the
scale of it. Private peering is of course
-
possible to where organisations just have
a direct connection between each other.
-
And OK. So these connections they are then
established somehow and how do the routers
-
know where to send what? And that's a good
question. This is managed by routing
-
protocols, BGP is one. One such
application or some, BIRD, is one
-
application and then BGP is the protocol.
So there are some rules, you can configure
-
what to prefer, what route to prefer, but
you can also just say I don't really care
-
so much and just use whatever is
available. And of course this depends on
-
how much you have to pay for traffic that
you send which way. If you have a really
-
good peering agreement with another
Internet organization and you're able to
-
send a lot of traffic their way then
without having to pay very much extra or
-
maybe anything at all then of course
you're going to try to send as much
-
traffic as possible that way. All right,
so now we're getting, we've looked at IP
-
addresses and IP addresses... we know some
systems on the Internet or connected to
-
the Internet... all systems connected to
the Internet, they have some IP address.
-
And if we know the IP address we can try
to reach that system.Yeah, yeah. That's a
-
bit unfortunate. So. The first um the
first bullet point is UDP. It's... now
-
we're talking about, okay, so on the on
the postcard when we're writing stuff
-
there we we put the IP address because we
know what system we want to reach. But we
-
want to send it some kind of message as
well. There are a few different ways to
-
structure messages. And these are the most
common ones, or the ones that make up
-
almost all of the traffic on the Internet.
So the first one is UDP. It's quite like
-
postcards. So it's just a single message.
There's no context, there's no connection
-
between two different messages, and
there's also no guarantees about how this
-
message will, or this packet will, perform
on the network. So if you send out a UDP
-
packet it might arrive or it might not and
you'll never know. And that can seem a bit
-
useless but actually it's quite good in
many cases. For example if you're doing
-
real time audio or video streaming UDP, is
a good choice because it's real time
-
information, so if something is missing
maybe there will be a glitch in the audio
-
or there will be some glitch in the video,
but it's not so important to wait and
-
delay the image to fix that glitch. It's
better to get the next image and just
-
replace the image. So just keep on going.
And for that UDP is a really good fit.
-
Just send it send it along and if it
arrives it arrives, most of the time it
-
does arrive. Most of the time it works
fine. So sometimes a good choice. The next
-
point there is TCP. So maybe you've heard
the term TCP/IP and TCP/IP is exactly
-
the... so specifically it's the
combination of this, this TCP then, I'll
-
get into it in a second, with the IP
address in both TCP and UDP. They have the
-
concept of a port. So that's a second
address. You could compare that with,
-
let's say, the IP address is the street
name and the port is the house number on
-
that particular street. So it's a bit more
precise. You know it's that system but
-
that system might offer many services and
you want one specific one. So for each of
-
the common services that we use, email and
web and Jabber and whatever, there are
-
typical port numbers that are allocated
and always the same. So that I don't have
-
to guess or or look up what it is. So with
TCP, what are the properties of that?
-
That's more like a stream of letters that
you have to go to the post office and
-
acknowledge that you've received. So the
recipient of a TCP packet or a network
-
packet with IP and TCP inside of it will
always confirm reception to the sender. So
-
this allows this concept of a connection
that I mentioned, where both sides talking
-
to each other are synchronized and know
where the other party is in this
-
communication or in this connection. What
data has been received and what has not
-
yet been received. So the packets, TCP
packets can of course also get lost,
-
right? There's no guarantee with any
network that it will always function
-
correctly. You can just pull the cable and
it will not be possible to send any
-
packets.So TCP will recognize that. Oh, so
I sent some packets out, but they haven't
-
been confirmed, they haven't been
acknowledged. OK. I'll try again. I'll
-
send again a few times and it's usually
adjustable how long TCP will be retrying
-
to communicate. And finally it will give
up and say yeah, sorry, it seems that this
-
connection is broken. It's not possible to
communicate anymore over this path. But if
-
you're quick and you plug the cable back
in then maybe everything will heal or the
-
connection will just continue functioning
just as if there was never an
-
interruption, because the network software
is just keeping track of what has been
-
sent, what has been received, and can
recover from this loss of communication.
-
And the third one on the bottom is this
SCTP. This is not quite so widespread but
-
it's still a very powerful mix. It's a lot
younger than the other two. So UDP and TCP
-
they are... I'd like to say 70s and 80s.
Yeah. So quite old. whereas SCTP I think
-
the standard was final, or the first
version of the standard came in 2000, so
-
it's quite a lot younger, tis is protocol.
But it's a powerful combination of
-
properties from both the older ones so you
can have... whereas TCP you just have a
-
constant stream of text, essentially, or
image or whatever content you are
-
transferring... with UDP you had this
message that's on the postcard, like
-
that's one postcard that you're sending,
that's the fixed fixed message. TCP
-
doesn't have that concept, it's just
information all the time until the
-
connection closes. SCTP you can have a
connection concept where both sides are
-
aware of the communication status or the
position and the communication, but you
-
will be able to use it. You will still be
able to send messages like on the
-
postcards. So you have a fixed size piece
of information that you want to transfer
-
and you can send that as a unit, whereas
if you're only using TCP, like we do on
-
the web all the time, you have to build a
lot of stuff around or on top of TCP in
-
order to achieve the same thing. So if I
want to transfer an image or when my
-
browser wants to download an image,
there's quite a lot of extra work that has
-
to go into making that possible with the
regular TCP protocol that is being used
-
for now, so it would advantage SCTP
certainly. It also has the retry, the
-
reliable delivery, if you want to, and you
can also use multi-homing. So that's not
-
so common yet. As I said typically in the
wireless home routers they only have the
-
single Internet connection but that might
change, we might in the future see several
-
different kinds of Internet connections
that we're using, and SCTP would be able
-
to take advantage of that quite easily
whereas the other ones cannot. So SCTP
-
can send the same information over several
different connections and whatever comes
-
first arrives first at the destination and
is accepted. This is of course a bit
-
wasteful but in some cases maybe it's not
a problem. So that's an exciting... I
-
think exciting new feature. Let's see what
the future brings. It seems that TCP is
-
going away slowly but surely. Let's see
what happens. But then some companies,
-
they're providing systems where they want,
they want to control much more of how the
-
software is using the network, how the
software is communicating on the network,
-
and the way that these systems are built.
Cell phones typically are smartphones.
-
It's not so easy to do that with either
TCP or SCTP, but it's quite easy to do it
-
if they're using UDP, so I think that's a
big motivator for them to try to move away
-
from TCP and use UDP even more. Let's see.
Sorry. So then we'll get in to some
-
applications. Now we've written on the
postcard, we've written addresses, IP
-
addresses, the system that we want to
communicate with, and we've chosen either
-
UDP or TCP depending on what what is most
suitable. Actually it depends typically on
-
the application. So some applications
require one or the other and a few
-
applications can do either or. The first
thing I'd like to mention here is DNS. I
-
call it the phone book, the Internet phone
book. But there is one big difference. A
-
phone book is something we get from from
one publisher, right? The phone company
-
typically. And they, or the POC here at
Congress, and they've just collected or
-
they know all the phone numbers and they
send us the list, right, with the names.
-
DNS is different in that everybody who has
who has a name in the DNS, in the domain
-
name system, so anybody can register a
domain name. And anybody who does that can
-
can publish some information there. You
can decide what you publish. Actually you
-
can decide if you publish. So let's say
you have a thousand IP addresses you can
-
decide if you want to publish names for
all of those thousand or if you just maybe
-
publish a few of them that are going to be
interesting for other people to use. And
-
90 percent of them are just internal
internal systems. So everybody gets to
-
choose what they what they publish and
everybody can publish. Also can run the
-
infrastructure, storing this information
on their own. So it's not that you have to
-
send this in somewhere necessarily and
they publish it for you. You can actually
-
do that on your own. So it's
decentralized. Very good. still it's super
-
super old protocol, from from those days
of from those early days of the internet.
-
Nobody was thinking about security and
nobody had done a lot of attacks on these
-
protocols, Whether it it be reliability
attacks or or just forgery attacks and so
-
on. That wasn't a concerned because this
was designed for companies working for
-
the government. Right. So everybody was
interested in collaborating and there were
-
no bad actors. The Internet now is, again,
quite different. So most of these these
-
old protocols actually aren't so great
anymore. The basic functionality of DNS or
-
the phonebook is to publish IP addresses
but you can publish other things as well.
-
If you're interested in DNS there's a good
talk about that later on. I mentioned it a
-
bit. So the next application I
want to talk about is SMTP or simple
-
mail transfer protocol. This is what is
used to deliver every single email in the
-
world. All the time. All day long. Now one
thing that's a bit interesting or quite
-
interesting but also problematic, I'd say,
about email and not SMTP per se but the
-
scope of SMTP is, that SMTP is used only
to send email. So SMTP doesn't have
-
anything to do with receiving email. This
means that there's a separate mechanism
-
for receiving email. And the way these two
these two different protocols or
-
mechanisms work end up putting the cost of
email with the person receiving mail. So I
-
have to pay in order to be there with
information or with money to get an email
-
address where I have some some gigabytes
of storage. Whereas people sending email
-
they don't have to pay anything. They just
need an internet access and then they can
-
send all the emails they want, all day
long, to every single possible address
-
email address in the world. And that's why
we have a spam problem on the Internet.
-
Yeah that's a bug. Let's see if this can
get fixed. Email is so tightly integrated
-
into our everyday lives that ... I'm not
sure. But let's see. That would be great.
-
So the last application protocol I want to
mention is the HTTP hypertext transfer
-
protocol that's used for web. You
recognize it from the web browser URLs.
-
Webpage used to be just hypertext so text
with some links. That's all they could do
-
in the very beginning. I'd like to show an
example of SMTP. Actually I have to do
-
something about this, because it's not so
not so easy to read. Let's see... I
-
should've done that already. Sorry about
that. Um so this is an example of an email
-
delivery. This is all it takes to send an
email on the Internet. The arrow pointing
-
left is received from the email server,
from the SMTP server. And the arrow
-
pointing this way [right] is what we send
to the email server when we want to send
-
an email. So if we connect to an email
server, for example mine, it will send us
-
some text. We are using TCP and we're
using port 25 for SMTP. So we get a stream
-
of text going back and forth. The the
server tells us 220 and its name, that's
-
some kind of welcome code. We say HELO my
name is laptop. Because I'm doing this
-
from my laptop. The the mail server says
OK, good to meet you. And then we say I
-
want to send an email where the sender
address is test@stuge.se. And if you're
-
paying attention here the sender of the
e-mail gets to say what the sender address
-
is. So this is why it's super easy for
anyone to forge email from any sender
-
address. It's just part of the message.
The server accepts the sender, even though
-
the sender might not even exist. I tell it
the recipient (RCPT). This is for me,
-
meant for me. The server says OK. Then I
say here's the DATA for this email and the
-
server says: go on, start sending me the
contents. And then I send send an email
-
where the the sender is Trollolol and just
some fake sender address, whatever subject
-
and some text. And in the end I finish
with a dot to say ok, end of message. The
-
server says OK. And then I say to the
server I want to QUIT not, I don't want to
-
talk to you anymore. The server says
"closing" goodbye. And this is e-mail on
-
the network. Last example: a web page,
access over HTTP. So this is even even
-
simpler. I've simplified this even a
little bit more. If you want to try this
-
yourself, please do. So HTTP is also TCP
and port 80. I tried talking to the
-
events.ccc.de web server. Same thing here:
Arrows pointing this way [right] is what
-
we send when we contact the server. So.
Connection opens. I send "GET / HTTP1.0"
-
because I want to get the main page and
I'm saying I'm speaking HTTP version 1.0.
-
And then I tell it OK I want to access
this start page on the hostname
-
events.ccc.de. Then I send it an empty
line. That's to say OK this is my request.
-
And then there comes the response (arrows
going in the other direction [left]) where
-
the web server says what you're asking for
is not available here where you're asking
-
for it. You have to go somewhere else.
It's a redirect. The 301 is the HTTP code
-
for redirect. And this content that
you're asking for, this page, it's been
-
moved permanently. The new location is
https://events.ccc.de. So I was using an
-
IP and TCP connection with no encryption.
And that's why I can just type in the GET
-
and the "Host:" line. But the web server
tells me I'm sorry I don't want to talk to
-
you without encryption. So you have to go
to this HTTPS address instead. Thank you
-
events.ccc.de! I like encryption. That's
good. And thank you also to all the
-
angels that make Congress possible because
without them and without you, who are
-
here, who are angels, there wouldn't be
any Congress. And also I want to say a
-
huge "thank you" to you in the audience,
for being curious and wanting to learn
-
something new.
-
applause
-
Herold Angel: Thank you
very much Peter. Now we have some time
-
left for Q and A so if you have questions
please do line up at the microphones that
-
you find here. If you want to ask
anything. Do we have a question from the
-
Internet. No. The Internet is out of
questions. Do I see anybody standing at
-
any microphone? Please make yourself known
if I overlook you. Any questions? Oh, at
-
microphone five. Please do ask your
question.
-
Question: You mentioned that you think
SMTP has a kind of bug, in the sense that,
-
you can just send an e-mail and the
responsibility is on the side of the
-
receiver. So if you call it a bug it seems
you have an easy solution.
-
Answer: I'm sorry, but, no, I don't. I
mean I wish! That that would be great!
-
It's not so easy to fix because it is a
property of SMTP, right, and of the e-mail
-
system that we're using. So there was a
proposal a long long time ago, by somebody
-
much smarter than me, called "Internet
Mail 2000" where actually the whole thing
-
is switched around, so that the sender has
to store the message, and the receiver can
-
go and pick it up. So there, the cost is
is is placed on the sender. And I think
-
that would go a long way to solving the
spam problem. But it's not compatible with
-
the e-mail software that we have today. So
it's not clear to me, how we would be able
-
to migrate in a good way, unfortunately.
-
Harald Angel: Thank You. Do we have any other
questions? That does not seem to be the
-
case, so please give another warm round of
applause to Peter Stuge. Thank you very
-
much for the talk.
Peter: Thank you.
-
applause
-
postroll music
-
subtitles created by c3subtitles.de
in the year 2018. Join, and help us!