1.1 A Day in the Life of an Application
Connectivity: connect to one another and exchange data
Network Application
Read and write data over network
Dominant network: bidirectional, reliable byte stream connection
One side reads what the other writes
Operates in both directions
Reliable (unless connection breaks)
Byte Stream Model
Either side can close the connection
World Wide Web (HTTP)
Hypertext transfer protocol
HTTP: document centric
Human readable
Request
"Get / HTTP / 1.1"
Response
"HTTP/1.1 200 OK"
BitTorrent
Share and exchange large files
Client request documents from other clients
Swarms
When the client wants to download a file, it first has to find something called a torrent file
Find it using the www
Download it using HTTP
torrent file describes some information about:
data file you want to download
tracker: keeps track of what clients are members of the swarm
Dense graphs of connections between clients, dynamically exchanging data
Skype
NAT: network address translator
Behind a NAT: can open connections out to the Internet, but other nodes in the Internet can't easily open the connections to you
Red-green area
Reverse connection (from B to A)
This happens in Skype
Skype client: personal machine (behind NAT, for security)
Last updated