Application Layer Flashcards
What is the Application Layer?
Application Layer is the top part of the TCP/IP model. It helps programs like web browsers, email apps, and file-sharing tools talk over the internet
Where do network applications run?
On the network edge (end-systems), not on the network core (routers).
What is a process in networking?
It’s a program on your device that can talk to other programs, either on the same device or over the internet
Difference between client and server processes?
Client starts the talk, server waits for it.
What are the two types of application architectures?
Client-Server: One main server, clients ask for stuff.
P2P (Peer-to-Peer): Everyone can share and ask; no main server.
What is a socket?
The connection point where a program talks to the network using the transport layer
What identifies a socket?
Unique combination of an IP address and port number
e.g., 194.80.24.5:80
What transport services might applications need?
Data Integrity: Ensures accurate file transfer.
Timing: Important for real-time services like gaming and VoIP.
Throughput: Measures data rate, important for video streaming.
Security: Ensures safe communication, e.g., with HTTPS.
Compare TCP and UDP.
TCP: Reliable, connects before sending data, controls flow and congestion.
UDP: Unreliable, no connection, no flow or congestion control.
What is HTTP?
The Application Layer protocol used by the World Wide Web. It doesn’t keep track of previous interactions and follows a client-server mode
HTTP default ports?
HTTP: Port 80
HTTPS: Port 443
What is the difference between non-persistent and persistent HTTP?
Non-persistent: A new connection is made every time something is needed.
➤ Like calling someone again and again for each question you ask.
Persistent: One connection is kept open to get everything needed.
➤ Like calling someone once and asking all your questions in one call.
HTTP request message components?
Request Line: Says what you want.
➤ Like “I want the homepage” (e.g., GET /index.html HTTP/1.1)
Header Lines: Extra info about the request.
➤ Like “Here’s who I am” or “I’m using Chrome” (e.g., Host, User-agent)
Blank Line: Just a separator.
➤ Like leaving a line blank before writing a message.
Optional Body: Extra stuff you send (if needed).
➤ Like sending a filled form (e.g., name, email).
Common HTTP methods?
GET, POST, HEAD, DELETE, CONNECT
Common HTTP response status codes?
200 OK
301 Moved Permanently
400 Bad Request
404 Not Found
505 HTTP Version Not Supported
What are the 3 main components of email?
User Agents (e.g., Outlook)
Mail Servers
SMTP protocol
What is SMTP? Simple Mail Transfer Protocol
Used to send emails between servers.
Port: 25
Protocol: TCP (means it’s reliable)
Structure: Client-Server (the sender is the client, the receiver’s mail server is the server)
Phases of SMTP message transfer?
Handshaking
Message Transfer
Connection Closure
What are common mail access protocols?
POP3: Simple, stateless
IMAP: Stores emails server-side, allows folder use
HTTP: Used for webmail clients
Difference between POP3 and IMAP?
POP3 (Post Office Protocol 3):
Downloads email to one device
Removes it from the server
Think: Like picking up a letter from the post office, you have it now, but it’s gone from the post office
IMAP (Internet Message Access Protocol):
Emails stay on the server
You can see the same emails on all devices
Think: Like checking email from the cloud, every device sees the same thing
What is DNS?
Application Layer protocol that turns website names into IP addresses. It’s like the Internet’s address book
Why is DNS distributed and hierarchical?
Make it easy to grow,
Don’t rely on one part that can break everything,
And keep things fast with less traffic and delay.
Three main layers of DNS hierarchy?
Root DNS servers
TLD DNS servers (e.g., .com, .uk)
Authoritative DNS servers
What are local DNS servers?
Send your DNS questions to the global system and save the answers to respond faster next time