this post was submitted on 01 Dec 2025
520 points (98.0% liked)
linuxmemes
28178 readers
593 users here now
Hint: :q!
Sister communities:
Community rules (click to expand)
1. Follow the site-wide rules
- Instance-wide TOS: https://legal.lemmy.world/tos/
- Lemmy code of conduct: https://join-lemmy.org/docs/code_of_conduct.html
2. Be civil
- Understand the difference between a joke and an insult.
- Do not harrass or attack users for any reason. This includes using blanket terms, like "every user of thing".
- Don't get baited into back-and-forth insults. We are not animals.
- Leave remarks of "peasantry" to the PCMR community. If you dislike an OS/service/application, attack the thing you dislike, not the individuals who use it. Some people may not have a choice.
- Bigotry will not be tolerated.
3. Post Linux-related content
- Including Unix and BSD.
- Non-Linux content is acceptable as long as it makes a reference to Linux. For example, the poorly made mockery of
sudoin Windows. - No porn, no politics, no trolling or ragebaiting.
- Don't come looking for advice, this is not the right community.
4. No recent reposts
- Everybody uses Arch btw, can't quit Vim, <loves/tolerates/hates> systemd, and wants to interject for a moment. You can stop now.
5. π¬π§ Language/ΡΠ·ΡΠΊ/Sprache
- This is primarily an English-speaking community. π¬π§π¦πΊπΊπΈ
- Comments written in other languages are allowed.
- The substance of a post should be comprehensible for people who only speak English.
- Titles and post bodies written in other languages will be allowed, but only as long as the above rule is observed.
6. (NEW!) Regarding public figures
We all have our opinions, and certain public figures can be divisive. Keep in mind that this is a community for memes and light-hearted fun, not for airing grievances or leveling accusations. - Keep discussions polite and free of disparagement.
- We are never in possession of all of the facts. Defamatory comments will not be tolerated.
- Discussions that get too heated will be locked and offending comments removed. Β
Please report posts and comments that break these rules!
Important: never execute code or follow advice that you don't understand or can't verify, especially here. The word of the day is credibility. This is a meme community -- even the most helpful comments might just be shitposts that can damage your system. Be aware, be smart, don't remove France.
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Without knowing your level of technical background, I defaulted to the same kind of analogy I use with family. If that isn't the best approach for you, I'm happy to try a different angle.
Yes, mostly.
For a brief excursion, the rough gist of networking is that the world wide web is just a bunch of connected computers, which is where the web analogy is from. To get a message to a specific computer, you first have some links that get your data packets from one node to the next. Then you have a routing protocol that figures out which node to send to next (IP being the most common one).
Then you have a transport protocol that prepares the packets to send on one end, reassembles the full message on the other if it had to be split up into multiple packets and checks that the contents look intact. In the case of TCP, it also establishes a connection to verify that all packets actually have arrived. In the case of UDP, it's more like that online retailer that sent my parcel without tracking and didn't care when it disappeared. Still mad about that. Anyway.
Transport doesn't care how routing works. A computer directly connected to yours is no better than one halfway across the world, aside from being faster to reach. Likewise, routing doesn't care how the packets get across. Whether by WiFi, optic fiber or SD card strapped to a homing pigeon β so long as the next node gets the packet, the job is done.
There are cases in web development where you do care about the transport protocol, but for making HTTP requests like you do with curl, you generally use a standard set of protocols (TCP/IP) and trust the network stack to get your messages there and back again. All you need is the address or the name (in which case, again, you trust the network to figure it out) and the actually relevant application info.
For this comment, my app knows the lemmy server to send to and the authentication token it uses to prove I'm actually @luciferofastora@feddit.org, so it bundles the ID of the parent comment I'm responding to and the body of my message up into a request, adds that authentication token and sends it to the server. How it gets there? Not Voyager's business.
If I had a token, the exact recipient address and whatever metadata it requires, I could probably send the comment via curl too.
haaa ! oh, that's nice. Great didactics. I guess I never had any idea of how things networking might be compartmentalized. Appreciate the example with Lemmy. I am tempted to ask more (could you actually send this comment via curl? how would you attach the authentification token? is there a builtin way to do such a thing or would it require abusing the command in some way? etc.) but there's a point where it makes more sense for me to take a class, haha. Having just switched my work machine to Linux, I learn a bit more everyday about things that used to be hidden from me, but suddenly come with the territory, so to say. Really enjoyed this overview, thanks again for indulging me