application layer Flashcards
application layer messages
often split over multiple packets or may be aggregated in a packet
application communication needs
vary widely on the app
must build on Transport services
examples( Web, DNS, Skype)
OSI session/presentation layers
part of app layer
presentation: converts diffrent representations
session: manages task dialogs
session concept
a session is a series of related network interactions in support of an application task
often informal, not explicit
examples:
- web page fetches multiple resources
- zoom call involves audio, video, chat
presentation concept
apps need to identify the type of content, and encode it for transfer
- presentation functions
- examples:
Media (MIME) types, e.g., image/jpeg, identify the type of content
transfer encodings, e.g., gzip, identify the encoding of the content
application headers are often simple and readable versus packed for efficiency
DNS
Domain Name System
machines on the internet identified by their IP addresses
DNS translates human readable names to IP addresses
DNS name space
hierarchical structure
- top level domains controlled by Internet Corporation for Assigned Names and Numbers (ICANN)
- organisations can request second-level domains from registrars (com-cisco-eng…)
- countries have their own second-level domains
- .edu and .gov are generic domains, but mostly used by organisations in the US
- if you own a domain, you can specify arbitrary subdomains
name servers
to translate a domain name to an IP address, you ask a name server
location of name servers
- hosts learn about the location of name servers via DHCP
- the operating system keeps track of name servers and dynamically selects which one to use
DHCP
Dynamic Host Configuration Protocol
- MAC addresses are built into NICs, but network addresses are not
- used to configure other settings such as: DNS name servers, addresses of default gateway, time servers, etc.
recursive and iterative queries
local name server-recursive
others-iterative
DNS Resource Record (RR) Types
- IPv4 address (record type A)
- IPv6 address (record type AAAA)
- domain that accepts email (record type MX)
- name server for this domain (record type NS)
- alias to canonical name (record type CNAME)
- …
Content Delivery Networks
a type of caching to increase system capability
front end forwards requests and distributed load
DNS can be used for load balancing
Metcalfe’s Law
- the value of a network is proportional to the square of the number of users
- (i.e., value is proportional to the number of possible connections)
- as networks get larger, there is more value on joining them, making them larger
email message formats
envelope (used to get the message to the correct recipient)
header
body
helpful email headers
message-id, in-reply-to, reply-to
email protocols
POP3 or IMAP for user interaction with mailbox
users and Message Transfer Message Agents use SMPT to send an email from src do dst
How does email work?
mail submission uses SMPT+Extensions(e.g. AUTH)
message transfer between mail servers uses SMTP
final delivery uses IMAP/POP3 or a propriety protocol
IMAP
Internet message access protocol
sends commands to mail server to manipulate mailboxes
uses mostly plain text (security through TLS)
replaced POP3