Application Layer Flashcards
what are the two possible structures of network applications
peer to peer
client server
does the server ip address change
no
does the server ip address change
no
how can servers be scaled
farming out to data centres
can client ip addresses change
yes
what do clients always communicate with in client server architecture
servers
is there an always on server in peer to peer architecture
no
in peer to peer architecture, do the clients have to go through the server always
no
how do peers use each other in peer to peer architecture
request service from each other and provide service in return
as new peers are added to the peer to peer architechture, how does this affect the system
increases load
new peers bring new capacity to give service to each other but also more demands for service
do the clients always keep the same ip address in p2p archicecture
no
why is there being no centralised system a good feature of p2p architecture
no point of attack
harder to bring down
what is the client process
process that initiates communication
what is the server process
process that waits to be contacted
which processes are performed in p2p arch
clients can perform both client and server processes
examples of apps that could tolerate some loss
audio
examples of apps that need 100% reliable data transfer
file transfer, web applications
examples of apps that require low time delay to be effective
multi player games
examples of apps that require low time delay to be effective
multi player games
example of apps where timing delays are not important
emails
what is throughput
how much data you can put through the system
examples of apps that require minimum amount of throughput to be effective
multimedia
what does it mean if an app is elastic
make use of whatever throughput they get
what does URL stand for
uniform resource locator
what part of the url is the host name
www.someschool.edu/someDept/pic.gif
www.someschool.edu
what part of the url is the path name
www.someschool.edu/someDept/pic.gif
/someDept.pic.gif
does http use udp or tcp
tcp
how does HTTP use TCP
- client initiates connection to server
- server accepts tcp connection from client
- HTTPmessages exchanged
- tcp connection closed
what does it mean for a server to be a threading server
can have multiple clients connecting to it at once
what does it mean to say HTTP is stateless
server maintains no information about past clients requests
why is the HTTP stateless
state slows things down
adds to delays and requires lots of storage
what is non persistent HTTP
at most 1 object can be send over TCP connection
connection then closed
so 100 objects requires 100 connections and 100 closes
what is persistent http
multiple objects can be sent over a single TCP connection
what is the advantage of persitant HTTP over non persistent HTTP
only needs one connection set up so quicker
what is the default mode of HTTP
persistent connections with pipelining
non persistent HTTP process outline
- url entered
- TCP syn request from client
- server accepts syn request
- client sends request as piggyback on third part of handshake
- server responds
- close TCP connection
- finish connection
- repeat for each object
persistent HTTP process outline
- one tcp connection initiation
- leave this connection open so when further requests come, send them over the same open connection
what is the time taken to transfer in persistent HTTP
syn = 1 rtt
request = 1 rtt
file transmission time
2rtt + file transmission time