Update 'selected/http_to_phy.md'
This commit is contained in:
parent
308c3e546d
commit
8433f15778
|
@ -6,14 +6,14 @@ usually referred to as a packet.
|
|||
|
||||
At a high level, packets are split into a few important sections.
|
||||
We're going to start with the simple case: Sending a packet over ethernet with HTTP over TCP.
|
||||
|
||||
Our packets look like this:
|
||||
```
|
||||
ETHERNET > IP > TCP > HTTP
|
||||
```
|
||||
[NOTE(cloin): this is an awkward transition, is there a better way to phrase this/this section?]
|
||||
|
||||
## HTTP and You
|
||||
|
||||
## HTTP -- Where Your Message Lives
|
||||
Browsers use HTTP (Hypertext Transfer Protocol) to communicate with web servers to request and receive web pages, and perform
|
||||
basic transactions, like updating your account, posting images, and getting the latest updates on the weather.
|
||||
HTTP defines a process for packing messages to be sent back and forth over the network.
|
||||
|
@ -27,10 +27,8 @@ Good learning resources for HTTP:
|
|||
<-- Link to expanded, less curated library of topical info -->
|
||||
<-- Branch into REST/GraphQL here -->
|
||||
|
||||
## Diving into the meat and potatoes with TCP and IP
|
||||
|
||||
HTTP responses and requests are a sequence of bytes, chunked up and sent in packets.
|
||||
|
||||
## TCP and IP -- Designed for Delivery
|
||||
[NOTE(cloin): TCP -> IP transition is not *quite* right, needs some thinking. Do we want to flip the order?]
|
||||
Working backwards, we'll tackle TCP next.
|
||||
|
||||
TCP is a protocol designed to aid in message delivery, built to help get your packets get from A -> B.
|
||||
|
@ -63,16 +61,15 @@ Good learning resources for IP:
|
|||
|
||||
<br>
|
||||
|
||||
## Making it Tractable
|
||||
## Exercise Time
|
||||
So, how do you *actually* send that cat though? How do you send a real packet yourself?
|
||||
It's time to make that theory stick.
|
||||
|
||||
So, how do you take all that theory and make it stick? How do you send a real packet yourself?
|
||||
Some good outlets for exercises:
|
||||
- https://beej.us/guide/bgnet/html/ [NOTE(hayden): This seems like an excellent resource!]
|
||||
- https://github.com/shuveb/zerohttpd [NOTE(hayden): If we can provide a brief description of the different folders in this repo, that might be helpful]
|
||||
|
||||
## Using the DNS Phonebook
|
||||
[NOTE(cloin): this feels detached after content reduction, needs to be worked back into the narrative]
|
||||
|
||||
## DNS -- Wait, how do I get an IP?
|
||||
The last really important bit you need to know is DNS. The job of DNS is to help you find IP addresses for domain names,
|
||||
like "handmade.network".
|
||||
|
||||
|
@ -84,10 +81,9 @@ Good learning resources for DNS:
|
|||
<-- Link to expanded, less curated library of topical info -->
|
||||
<-- Branch into DNS over HTTPS / DNS Lookup Security via link here -->
|
||||
|
||||
## Bits at Rock Bottom
|
||||
|
||||
## Rock Bottom (Ethernet and PHY)
|
||||
Ok, so you've got some of the basics down, and you're ready for some serious spelunking?
|
||||
Let's talk Ethernet and PHY.
|
||||
Let's talk bits and bytes.
|
||||
- https://www.youtube.com/watch?v=XaGXPObx2Gs&list=PLowKtXNTBypH19whXTVoG3oKSuOcw_XeW
|
||||
|
||||
<br>
|
||||
|
|
Loading…
Reference in New Issue