So many jargons in computer networks. Categorize notions to be concious or not concious when programming
Internet related protocols or algorithms is to retrieve information in the network environment and configuring how to communicate between machines.
Internet protocols are standardized rules that let devices communicate over the internet—how data is addressed, sent, routed, secured, and received. They’re organized in layers, each with a clear role.
- Role: Addressing & routing packets
- Versions: IPv4, IPv6
- Key idea: Best-effort delivery (no guarantee)
- Role: Reliable, ordered delivery
- Features: 3-way handshake, retransmission, flow & congestion control
- Used by: HTTP(S), FTP, SMTP
- Role: Fast, connectionless delivery
- Features: No reliability, low latency
- Used by: DNS, VoIP, streaming, games
- Web communication
- HTTPS = HTTP + TLS (encryption)
- Converts domain names → IP addresses
- Mostly uses UDP (sometimes TCP)
- Email protocols
- SMTP: sending
- POP3/IMAP: receiving
- File transfer
- SFTP runs over SSH (secure)
- Secure remote login & command execution
- Encrypts data in transit
- Used by HTTPS, FTPS, SMTP over TLS
- Secures IP packets directly
- Often used in VPNs
- Error reporting & diagnostics
- Example:
ping,traceroute
- Maps IP addresses → MAC addresses (local network)
- Automatically assigns IP addresses to devices
- DNS resolves
example.com→ IP - TCP connection established
- TLS handshake (if HTTPS)
- HTTP request sent
- IP routes packets across networks
- Application
- Transport
- Internet
- Network Access
Physical → Data Link → Network → Transport → Session → Presentation → Application
If you want, I can:
- Compare TCP vs UDP in depth
- Explain protocols from a security (ISMS / ISO 27001) perspective
- Map protocols to real packet flows or Wireshark analysis
- Focus on AI / distributed systems / cloud architectures
Just tell me which angle you want 👍