1
- 1
16: Applicat ion, Transport , Net work and Link Layers
Last Modif ied: 7/ 3/ 2004 1:46:53 PM
- 2
Roadmap
Applicat ion Layer (User level) Transport Layer (OS) Net work Layer (OS) Link Layer (Device Driver, Adapt er Card)
- 3
Applicat ion Layer
Net work Applicat ions Drive Net work
Design
I mport ant t o remember t hat net work
applicat ions are t he reason we care about building a net work inf rast ruct ure
Applicat ions range f rom t ext based
command line ones popular in t he 1980s (like t elnet , f t p, news, chat , et c) t o mult imedia applicat ions (Web browsers, audio and video st reaming, realt ime videoconf erencing, et c.)
- 4
Applicat ions and applicat ion-layer prot ocols
Applicat ion: communicat ing, dist ribut ed processes
running in net work host s in
“user space”
exchange messages t o
implement app
e.g., email, f ile t ransf er,
t he Web Applicat ion- layer prot ocols
- ne “piece” of an app
def ine messages
exchanged by apps and act ions t aken
user services provided by
lower layer prot ocols
applicat ion t ransport net work dat a link physical applicat ion t ransport net work dat a link physical applicat ion t ransport net work dat a link physical
- 5
Client-ser ver par adigm
Typical net work app has t wo pieces: client and server
applicat ion t ransport net work dat a link physical applicat ion t ransport net work dat a link physical
Client :
init iat es cont act wit h server
(“speaks f irst ”)
t ypically request s service f rom
server,
f or Web, client is implement ed
in browser; f or e- mail, in mail reader Ser ver :
Running f ir st (always?) provides request ed service t o
client e.g., Web server sends request ed Web page, mail server delivers e- mail request reply
- 6
How do client s and servers communicat e?
API : applicat ion pr ogr amming int er f ace
def ines int er f ace
bet ween applicat ion and t r anspor t layer
socket : I nt er net API
t wo processes
communicat e by sending dat a int o socket , reading dat a out of socket
Q: how does a pr ocess “ident if y” t he ot her pr ocess wit h which it want s t o communicat e?
I P address of host
running ot her process
“port number ” - allows