chapter 2 - application layer Flashcards
(60 cards)
What does the application layer do?
provides services for applications to communicate over the network
What are the two main application architectures?
Client-server and peer-to-peer (P2P)
What is a client-server model?
client contacts an server with a fixed IP -> server answers
What is peer-to-peer (P2P)?
hosts both request and provide services to each other
What is a socket?
interface between the application layer and the transport layer
like a door to the network
How do processes on different hosts communicate?
By exchanging messages through sockets
What info is needed to identify a process?
IP address + port number
Common port numbers: HTTP? Mail?
HTTP = 80, Mail = 25
What does an application-layer protocol define?
Message types
syntax
semantics
rules for sending/receiving
What are open protocols?
communication rules and standards that are public, anyone can use them
like HTTP, SMTP
What are common transport needs for apps?
reliable
low dealy
Throughput (some need high bandwidt)
Security
Key features of TCP?
Reliable
flow control
congestion control
connection-oriented
Key features of UDP?
Unreliable
no flow/congestion control
no setup
faster
Does TCP guarantee timing or security?
No, only reliable delivery
How can TCP be secured?
Using TLS (Transport Layer Security)
What does TLS do?
Encrypts data
authenticates server
ensures data integrity
What is HTTP?
Web’s application layer protocol -
rules for how client talks to a webserver
TCP on port 80
Where is TLS implemented?
Application layer
What is a web page made of?
A base HTML file + referenced objects (images, stylesheets..)
Is HTTP stateful or stateless?
Stateless
server does not store past request info
What are the two types of HTTP connections?
Non-persistent and persistent
What is non-persistent HTTP?
One TCP connection per object
What is persistent HTTP?
One TCP connection for multiple objects
HTTP response time (non-persistent)?
2 RTTs + file transmission time