Applications Flashcards
Process
program running within a host
-communicate with applicattion-layer protocol
user agent
interfaces with user “above” and network “below”
-implements user interface and application level protocol
Web: browser
Email: mail reader
streaming audio/ video: media player
application layer protocols (5)
one “piece” of an app
- use communication services provided by lower level protocols (TCP, UDP)
- types of messages exchanged (request/ response/ etc)
- syntax of message types (what fields in messages and how fields are delineated)
- semantics of fields
- rules for when and how processes send&respond to messages
rlogin
logging into and executing commands on remote machines
only UNIX
simpler and more efficient than telnet
shell
application that reads and understands user commands and invokes corresponding programs
pro and con of letting TCP decide sizes of segments sent b/t client and server
pro: low network workload
con: slow responses
pros and con of forcing TCP to send 1 byte segments
Pro:
fast response time
con:
high workload
Nagle’s Algorithm
-get balance b/t response time and network workload
A TCP connection can have only 1 outstanding small segment
No additional small segments can be sent until that ACK is received (so the segment builds up and becomes large – in slow networks)
FTP (File Transfer Protocol)
- one control connection for each FTP session
- one data connection for each file transfer
- server ports 20 & 21 reserved for FTP
Control connection
- server waits for connection requests on port 21
- client sends connection requests to port 21 of server
Data connection
- client chooses an unused port # and sends this # to server via control connection, using PORT command
- server receives port # and establishes TCP connection to client
SMTP (Simple Mail transfer Protocol)
Sender’s Mail Transfer Agent establishes TCP connection with receiver’s Mail Transfer Agent
Mail transfer agent
program that performs SMTP protocol to actually deliver e-mails
(sendmail in Unix)
remote user agent
- user agent that runs on a machine different from where mail storages are
- need mail access protocol (POP, IMAP)
HTTP
- Browsers request web pages from server using Hypertext Transfer Protocol
- simple client-server transaction protocol
- web’s application layer protocol
- uses TCP
- stateless (server keeps no info about past client requests)