finished providing feedback for HTTP to PHY!

Main notes are at the bottom of the article. I also put notes in brackets throughout the article. If you open the page in edit mode, they are much easier to see because they are highlighted in a different color (or at least, they are in my browser!)
This commit is contained in:
haydendavenport 2022-06-05 15:36:11 +00:00
parent bd48150d27
commit b656dbcd7c
1 changed files with 9 additions and 3 deletions

View File

@ -48,7 +48,7 @@ like where the packet is coming from, and where the packet needs to go, so netwo
along the way can route it from A->B to reach it's destination along the way can route it from A->B to reach it's destination
Good learning resources for IP: Good learning resources for IP:
- https://www.youtube.com/watch?v=rPoalUa4m8E - https://www.youtube.com/watch?v=rPoalUa4m8E [NOTE(hayden): Should point to point links, 'frames', and MAC addresses be covered before this point?]
- https://www.youtube.com/watch?v=VWJ8GmYnjTs - https://www.youtube.com/watch?v=VWJ8GmYnjTs
<-- Link to expanded, less curated library of topical info --> <-- Link to expanded, less curated library of topical info -->
@ -60,8 +60,8 @@ Good learning resources for IP:
So, how do you take all that theory and make it stick? How do you send a real packet yourself? 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: Some good outlets for exercises:
- https://beej.us/guide/bgnet/html/ - https://beej.us/guide/bgnet/html/ [NOTE(hayden): This seems like an excellent resource!]
- https://github.com/shuveb/zerohttpd - 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]
## Taking the Real Plunge ## Taking the Real Plunge
@ -77,6 +77,8 @@ So, how does the computer get an IP address? How do we know what the router's IP
How do find the IP address of "https://handmade.network/" so we can send it a request? How do find the IP address of "https://handmade.network/" so we can send it a request?
Discovery protocols to the rescue! Discovery protocols to the rescue!
[NOTE(hayden): Do we need links for this section?]
## Using the DNS Phonebook ## Using the DNS Phonebook
DNS sits at the top acting as a final, important, icing on the cake. The job of DNS is primarily to DNS sits at the top acting as a final, important, icing on the cake. The job of DNS is primarily to
@ -227,13 +229,17 @@ bearSSL
Hayden's Notes: Hayden's Notes:
* If HTTP is a transfer protocol, I'm confused about why TCP is necessary -- why does a transfer protocol need a second transfer protocol to transfer itself? lol * If HTTP is a transfer protocol, I'm confused about why TCP is necessary -- why does a transfer protocol need a second transfer protocol to transfer itself? lol
* I think this article could use a breif description of what we mean by HTTP to PHY. From reading the article, it seems to just mean explaining the entire network stack all the way down to the way ethernet cables physically transfer network information. Putting a short explainer at the very top may help with motivating the reader (and helping them understand whether or not the article would be worth reading)
* Each of the links should probably have their own slight preface, explaining what you will learn by following the link. The Odin Project does this, and I think that's generally a good pedagogical approach (before you learn, you are given context about what you are going to learn) * Each of the links should probably have their own slight preface, explaining what you will learn by following the link. The Odin Project does this, and I think that's generally a good pedagogical approach (before you learn, you are given context about what you are going to learn)
* Holistic learning should probably include video and articles, so I'd recommend having both types whenever possible for each topic. I can certainly help with this! * Holistic learning should probably include video and articles, so I'd recommend having both types whenever possible for each topic. I can certainly help with this!
* Starting at the "Taking the Real Plunge" section, I started feeling more lost. I think this may have been intentional since it starts branching off, but it seems like there is a through-line between almost everything listed. Like at some point, information travels through the ethernet cable, and everything listed here is used in some specific order. Is there a higher level article we can find that covers exactly how all of that information is passed along from protocol to protocol? I think even just a simple image (that still manages to cover basically everything in this article) would help a lot here! I think "The Recipe" thing at the top is kinda close to what I'm after, but it's not detailed enough in terms of the linear procedure. I could even make a graphic potentially (it wouldn't be super beautiful, but it would get the job done), if we can put it into text at a very high level first
* Overall, I think this is great work so far! I definitely learned a good bit about how the internet works, and I have to admit, there are several things about this that piqued my interest! I think you did a really good job with picking out articles. They all seemed high quality to me with great information and pedagogical approaches to the way the information was presented
My attempt to understand: My attempt to understand:
- HTTP are simple requests for information, and responses to those requests - HTTP are simple requests for information, and responses to those requests
- On top of this, TCP is used to "oversee" the reliable transmission of these files, ensuring proper ordering and that nothing is lost. This is necessary, since it often requires many computers all over the globe to route information to the correct location - On top of this, TCP is used to "oversee" the reliable transmission of these files, ensuring proper ordering and that nothing is lost. This is necessary, since it often requires many computers all over the globe to route information to the correct location
- IP is an additional layer, often bundled with TCP, that provides information regarding where the HTTP requests should be routed - IP is an additional layer, often bundled with TCP, that provides information regarding where the HTTP requests should be routed
- I get much more lost when it comes to where exactly in the pipeline Discovery Protocols, DNS, DHCP, and ARP come into play
* An analogy for the above would be amazing. Relate it to what a USPS facility might be responsible for on a given day, perhaps? Is the below analogy accurate at all? * An analogy for the above would be amazing. Relate it to what a USPS facility might be responsible for on a given day, perhaps? Is the below analogy accurate at all?
* HTTP is the request to Amazon to buy a product? "I want this product sent to my address" * HTTP is the request to Amazon to buy a product? "I want this product sent to my address"