Web and Internet Basics
Created Tuesday 08 June 2021
Diversity of layers (OSI)
Application (HTTP, telnet, etc)
Presentation (framework MIME)
Session (pipe,SOCKS)
Transport (reliable packet delivery, TCP)
Network (nodes and address, IP)
Data (PPP)
Physical (wires, radio, USB)
Diversity of layers (OSI)
Application - Purpose
Presentation - Structured efficiently for a purpose
Session - CONTINUOUSLY, no breaks
Transport - Reliably, with confirmation
Network - Getting data from A to B
Data - 0s and 1s
Physical
Where your attention is required
Application (HTTP, telnet, etc)
Presentation (framework MIME)
Session (pipe,SOCKS)
Transport (reliable packet delivery, TCP)
Network (nodes and address, IP)
Data (PPP)
Physical (wires, radio, USB)
Lets go in a good order
Physical (wires, radio, USB)
Network (nodes and address, IP)
Application (HTTP, telnet, etc)
PHYSICAL - Lets start with
There is NO CLOUD.
It is just COMPUTERS connected to other COMPUTERS.
In a billion different ways, but you know
Through the AIR and Through the WIRES
wires and lasers and microwaves and x rays sort of
PHYSICAL - Lets start with
None of these computers are fundamentally different from this:
Physical- and virtual
The closest to "different from this" are the different flavors of
Virtualization (and similar)
here are some words that have to do with that:
KVM, Kubernetes, Docker, Containerization, VMWare, Virtualbox
All essentially having to do with:
A little "imaginary" computer running inside a "bigger" real computer,
to make them easier to modify in some way or another
(i.e. you can "create" and "destroy" computers with commands,
or update like 100 at once, etc. etc.)
To be perfectly honest
Most "servers" you encounter will be like this;
but you may not even need to think about that,
which is kind of the point.
So again, just a computer + computer
NETWORK
Packet Switched/Peer to Peer
This is the *default.*
It's not a one to one connection, it goes through a bunch of peoples stuff, always
"nodes/switches" and "pipes"
DECENTRALIZED
IP
Lots of practical weirdness here:
IP addresses - basically a phone number
IPv4
The classic way of doing IPs. Of course, there aren't enough.
So that's why we have routers.
(Pretty much the same as "extensions" for phone numbers)
IPv6 makes it so there enough numbers, and the two systems basically just work together
DNS
Like a phone book, but MOSTLY decentralized.
Obviously a bit controversial now, because they are not fully decentralized.
jrm4.com? oh, thats actually SOMETHING-198.136.61.171
DNS
(quick note, there is NOT always a one-to-one relationship
between "website name" and "IP address")
Google has MANY ip addresses
198.136.61.171 has MANY .coms etc
Also, Ports
Okay, so every bit of stuff that goes over the internet and uses this
is also using a particular "port"
Which is just another "extension" type number,
where the defaults have particular purposes.
A lot of the time you don't see them because the software hides them and you don't need to.
Ports
21 - FTP
22 - SSH (sFTP)
80 - HTTP
443 -HTTPS
I bring this up for another reason
Internet communication is the same as "real" communication, namely
Communication
There must be a reciever and sender.
On the net, this is a *technical* point.
Lets do the web
How does TORCH Work? Like this:
Somebody set up a real/big computer
Installed Linux
Installed Virtualization Software
Set up a system to tell a router
"HEY this big computer is allowed to get and give 128.186.*.* addresses"
Somebody set up "Torch"
Was assigned one (or more) of those addresses
Also got to say "HEY DNS, put 'torch.cci.fsu.edu' in the phone book
More Torch, but you can do this at home
Installed Linux, again, virtually.
Installed a Web Server (Apache)
Did this:
HEY, for every user here, put in public_html
What Apache Does
Listens on ports 80 and 443.
If someone asks for a file that matches one I have..
..by means of naming and folder (and other) rules
I send them that HTML file.
What Apache Does, slightly more complex
If they ask for a PHP file I have
I *FIRST* do what the PHP file tells me to do...
..and then I send THAT.
What Apache Does, weirdly not complex
If they ask for a Javascript file I have..
..yeah, I just give it to them, not my problem.
What your computer does:
Asks for the HTML file, downloads it.
If successful, reformats it and prints it to the screen for easy viewing
What your computer does, if PHP
No difference. Your computer doesn't do the PHP. It's still just HTML from your pov
What your computer does, if Javascript...
Just runs it. Runs A RANDOM FILE IT JUST GOT FROM THE INTERNET
do we see the problem here? ☺
NOT OUR PROBLEM THIS AINT CYBERSECURITY.
Backlinks: FSU Courses:LIS5362:RawSlides