Top Banner
Application Layer -2- User Applications 2015, Lecture 10 Kaan Bür EITF25 – Internet: Technology and Applications
47

EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

May 28, 2018

Download

Documents

vuonglien
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

Application Layer-2-

UserApplications

2015,Lecture 10Kaan Bür

EITF25– Internet:TechnologyandApplications

Page 2: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

PreviouslyonEITF25

• FromdomainnamestoIPaddresses:DNS

• Hostconfiguration:DHCP

• Debuggingtools:ICMP,ping,traceroot

• World-wideWeb:HTTP2015-12-07 2EITF25– Internet:TechnologyandApplications

ApplicationLayer(1)

Page 3: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

Today:ApplicationLayer (2)

• FileTransferProtocol,FTP[F26.2]

• Electronicmail,SMTP,POP,IMAP[S24.1][F26.3]

• Peer-to-peernetworks,P2P[F29.1,F29.5]

• VoiceoverIP,VoIP[S25.2-3][F28.4.4-5]

*[Kihl&Andersson:12.3,12.5-6,12.8]2015-12-07 3EITF25– Internet:TechnologyandApplications

Page 4: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

Worldwideweb(www)

• 1989-1990:HTTP,HTMLbyTimBerners-Lee• 1991afirstwebbrowser• 1991wwwgoespublic– http://info.cern.ch– Firstwebsite

• 1991:TheTrojanRoomcoffeepot– http://www.cl.cam.ac.uk/coffee/coffee.html– Firstwebcam(realtimeimages)

• 1993:Mosaicbecomespublic2015-12-07 EITF25– Internet:TechnologyandApplications 4

Page 5: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

Worldwideweb(www)

• 1994:PizzaHut(firstonlinewebshop)• 1994:Yahoo• 1995:AltaVista• 1997:AOLinstantmessanger• 1997:sixdegrees.com(firstmodernsocialnet)• 1997:Google

2015-12-07 EITF25– Internet:TechnologyandApplications 5

Page 6: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

Thencamethedigitalage...• 1999:Napster• 1999:Blogger• 2001:BitTorrent• 2001:Wikipedia• 2003:Skype• 2003:WordPress• 2004:Gmail• 2004:Flickr• 2005:YouTube• 2005:Facebook• 2006:Twitter• 2008:Spotify• 2009:GoogleDocs• 2009:AngryBirds

See: 10 surprising social media statistics... (2013)2015-12-07 EITF25– Internet:TechnologyandApplications 6

Page 7: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

Client/serverparadigm

• Mostearlyapplicationswerebasedonit– http– ftp– e-mail

Request

Reply

2015-12-07 EITF25– Internet:TechnologyandApplications 7

Page 8: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

FileTransferProtocol(FTP) - 1971

• Filetransferbetweentwocomputers• TCP/IP

• Notsostraightforward– Fileconventions– Datarepresentations– Directorystructures

2015-12-07 EITF25– Internet:TechnologyandApplications 8

Page 9: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

Controlconnection

Dataconnection

FTP:basicmodel

Controlconnection• Openforentiresession• Commands&responses

– ASCII

Dataconnection• Newoneforeachfile

20

21

2015-12-07 EITF25– Internet:TechnologyandApplications 9

Page 10: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

FTP:Dataconnection

• Clientissuespassiveopen– SendsPORT#toserver

• Serverissuesactiveopen– server:port20↔client:port#

• Allpreparationsthrough controlconnection

2015-12-07 EITF25– Internet:TechnologyandApplications 10

Page 11: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

FTP:Controlconnection

2015-12-07 EITF25– Internet:TechnologyandApplications 11

CO

MM

AN

DS

RES

PON

SES

Page 12: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

FTP

• Session

2015-12-07 EITF25– Internet:TechnologyandApplications 12

Page 13: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

Electronicmail(e-mail) - 1971

• Thefirste-mailwassentbetweentwocomputersinthesameroom.

• Toseparatetheuserfromthehostcomputer,[email protected]. 132015-12-07 EITF25– Internet:TechnologyandApplications

Page 14: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

1

2

3

4 5 6

7

8

9

E-mail:basicmodel

pull

2015-12-07 EITF25– Internet:TechnologyandApplications 14

Page 15: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

E-mail:protocolsused• SMTP– Simplemailtransferprotocol

• POP– Postofficeprotocol

• IMAP– Internetmailaccessprotocol

2015-12-07 EITF25– Internet:TechnologyandApplications 15

Page 16: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

E-mail:serverarchitecture

Sender&receiverinone

• Notaverygoodrepresentation!

Aholisticview

2015-12-07 EITF25– Internet:TechnologyandApplications 16

INTERNET

Localclient

SMTP(in/out)

POP

Local client

Inte

rnet

SMTP

SMTP

POP

SMTP

Page 17: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

E-mail:Web-basedservices

2015-12-07 EITF25– Internet:TechnologyandApplications 17

Page 18: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

Seeyouin15’:)

• Afterthebreak– P2P,BitTorrent– VoIP,Skype

2015-12-07 18EITF25– Internet:TechnologyandApplications

Page 19: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

Performancechallenges

• Client/serverarchictures– StandardizedprotocolslikeHTTP– Heavytrafficloadonnetworkinfrastructure– Unicasttransmission– Delaysduetooverloadedaccessnetworks– Singlepointoffailure

2015-12-07 EITF25– Internet:TechnologyandApplications 19

Page 20: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

Onesolution:P2P(andcaches)

• Spotify

2015-12-07 EITF25– Internet:TechnologyandApplications 20http://www.csc.kth.se/~gkreitz

Page 21: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

Result:betterloaddistribution

212015-12-07 EITF25– Internet:TechnologyandApplicationshttp://www.csc.kth.se/~gkreitz

Page 22: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

Peer-to-peer(P2P)paradigm

2015-12-07 EITF25– Internet:TechnologyandApplications

• Userssharingdataformnetworkofpeers• FirstP2Pfilesharing1987–WWIVnetbulletinboardbyWayneBell

• Gainedpopularity1999– NapsterbyShawnFanning

22

Page 23: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

P2Pnetworks

Centralised• Directoryserver

Decentralised• Overlaynetwork

– Logicalontopofphysical

• A)unstructured– Nodeslinkedrandomly– Queries floodnetwork

• B)structured– Nodeslinkedwithrules(DHT)– Moreefficientqueryresolving

• Initiallistofnodesprovided

2015-12-07 EITF25– Internet:TechnologyandApplications 23

Page 24: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

DistributedHashTables(DHT)

• Ahashfunctionisanalgorithmthatmapsdataofvariablelengthtodataoffixedlength. (m bits)

– NodeID=hash(peerIPaddress)– Key=hash(filename)

• DHTdistributesdataamongasetofnodes.– Eachpeerisresponsibleforaportionofdata.

• DHTroutesaquerytoresponsiblenode– Peershavepartialknowledgeaboutwholenet.

2015-12-07 EITF25– Internet:TechnologyandApplications 24

Page 25: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

DHTaddressspace

• NodeID=hash(peerIPaddress)• Key=hash(filename)

2015-12-07 EITF25– Internet:TechnologyandApplications 25

Page 26: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

DHTexample

• Examplem=5– NodeID(5)– Key(14)– Ref(17)

2015-12-07 EITF25– Internet:TechnologyandApplications 26

Page 27: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

P2Pexample:BitTorrent

• Groupofpeersworktogethertogiveallpeersacopyofsharedfile.– Torrent– Swarm– Seed– Leech– Tracker

• Nodownloadingwholefilefromonepeer

2015-12-07 EITF25– Internet:TechnologyandApplications 27

Page 28: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

Tracker

• Provideslistofpeersforgiventorrent

2015-12-07 EITF25– Internet:TechnologyandApplications 28

BitTorrent Server

New peer

Page 29: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

VoiceoverIP(VoIP)

SIP

• SessionInitiationProtocol

• IETFstandard

H.323

• Communication(telephone,computer)

• ITU-Tstandard

2015-12-07 EITF25– Internet:TechnologyandApplications 29

• Internettelephony– Usestwoprotocols

Page 30: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

SessionInitiationProtocol(SIP)

• Applicationlayerprotocol• Multimediasessionmanagement• Text-basedmessages

• Variousaddresstypes

2015-12-07 30EITF25– Internet:TechnologyandApplications

Page 31: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

AsimpleSIPsession

2015-12-07 31EITF25– Internet:TechnologyandApplications

Page 32: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

Trackingthecallee

2015-12-07 32EITF25– Internet:TechnologyandApplications

Page 33: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

H.323

• Communication(telephone,computer)– Gateway=5-layertranslationdevice– Gatekeeper=registrar

2015-12-07 33EITF25– Internet:TechnologyandApplications

Page 34: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

H.323protocols

2015-12-07 34EITF25– Internet:TechnologyandApplications

ResourcereservationCompressionmethodnegotiation

Connection setupAudioexchange&management

Page 35: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

H.323session

2015-12-07 35EITF25– Internet:TechnologyandApplications

Page 36: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

Counter-example:Skype

2015-12-07 EITF25– Internet:TechnologyandApplications 36

Page 37: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

EvolutionofInternetusage

• Trafficvolumesgeneratedbyusers

2015-12-07 EITF25– Internet:TechnologyandApplications

2007

2011

J. Li, A. Aurelius, V. Nordell, M. Du, Å. Arvidsson, M. Kihl: A five year perspective of traffic pattern evolution in a residential broadband access networkFuture Network & Mobile Summit 2012

37

Page 38: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

Contentdistributionarchitectures

• Multimedia– Contentstoredinback-endserverclusters(cloud)– Distributedtoclientsuponrequested

2015-12-07 EITF25– Internet:TechnologyandApplications

Internet

Content Clients 38

Page 39: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

Example:LivesportchannelatTV4

2015-12-07 EITF25– Internet:TechnologyandApplications

National ISPAccess network Modem

Speakers

Cache servers(http)

Production Transmission control

IP multicast network

EncodingEncryption Ingest servers Origin servers

(http)

PC / CE device (TV /

bluray)

Content Distribution

Network (CDN)Ingest servers

(http)39

Page 40: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

Summary: ApplicationLayer (2)

• AlittlehistorybehindWWW• Client/serverapplications– ftp,filetransfer– e-mail,messageexchange

• P2Papplications– Bittorrent,filesharing– Skype,Internettelephony

• Streamingmultimediaapplications

2015-12-07 EITF25– Internet:TechnologyandApplications 40

Page 41: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

Appendix

ConnectingDevices

Page 42: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

Connectingdevices (1)

ApplicationPresentation

SessionTransportNetwork

LinkPhysical

ApplicationPresentation

SessionTransportNetwork

LinkPhysical

LinkPHY PHY

Sender Receiver

Switch

ProtocolData

2015-12-07 EITF25– Internet:TechnologyandApplications 42

Page 43: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

Switch

• usedwithinalocalnetwork

2015-12-07 EITF25– Internet:TechnologyandApplications 43

Page 44: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

Connectingdevices (2)

ApplicationPresentation

SessionTransportNetwork

LinkPhysical

ApplicationPresentation

SessionTransportNetwork

LinkPhysical

NetworkLink LinkPHY PHY

Sender ReceiverProtocolData

2015-12-07 EITF25– Internet:TechnologyandApplications

Router

44

Page 45: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

Router

• usedbetweennetworksusingthesamenetworkprotocol

2015-12-07 EITF25– Internet:TechnologyandApplications

IP network IP network

45

Page 46: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

Connectingdevices (3)

ApplicationPresentation

SessionTransportNetwork

LinkPhysical

ApplicationPresentation

SessionTransportNetwork

LinkPhysical

ApplicationP. P.S. S.T. T.

Net NetLink LinkPHY PHY

Sender ReceiverData

2015-12-07 EITF25– Internet:TechnologyandApplications

Gateway

46

Page 47: EITF25 -20151207-10 application layer -2- user applications · Application Layer-2-User Applications 2015, Lecture 10 KaanBür ... Technology and Applications 2 Application Layer

Gateway

• usedbetweennetworksofdifferenttypes

2015-12-07 EITF25– Internet:TechnologyandApplications

IP-network Mobile network

47