Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server...
Transcript of Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server...
![Page 1: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/1.jpg)
Application Layer-2-
User Applications
2013, Lecture 07Kaan Bür, Stefan Höst
EITF25 – Internet: Technology and Applications
![Page 2: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/2.jpg)
Previously on EITF25
• From domain names to IP addresses: DNS
• Host configuration: DHCP
• Debugging tools: ICMP, ping, traceroot
• World-wide Web: HTTP2013-11-22 2EITF25 – Internet: Technology and Applications
Application Layer (1)
![Page 3: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/3.jpg)
Today: Application Layer (2)
• File Transfer Protocol, FTP[Forouzan ed.5 ch.26.2]
• Electronic mail, SMTP, POP, IMAP[Forouzan ed.5 ch.26.3]
• Peer-to-peer networks, P2P[Forouzan ed.5 ch.29.1, 29.5]
• Voice over IP, VoIP[Forouzan ed.5 ch.28.4.4-5]
*[Kihl & Andersson: 12.3, 12.5-6, 12.8]2013-11-22 3EITF25 – Internet: Technology and Applications
![Page 4: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/4.jpg)
World wide web (www)
• 1989-1990: HTTP, HTML by Tim Berners-Lee• 1991 a first web browser• 1991 www goes public
– http://info.cern.ch– First website
• 1991: The Trojan Room coffee pot– http://www.cl.cam.ac.uk/coffee/coffee.html– First webcam (real time images)
• 1993: Mosaic becomes public2013-11-22 EITF25 – Internet: Technology and Applications 4
![Page 5: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/5.jpg)
World wide web (www)
• 1994: Pizza Hut (first online webshop)• 1994: Yahoo• 1995: AltaVista• 1997: AOL instant messanger• 1997: sixdegrees.com (first modern social net)• 1997: Google
2013-11-22 EITF25 – Internet: Technology and Applications 5
![Page 6: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/6.jpg)
Then came the digital age...• 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: Google Docs• 2009: Angry Birds
See: 10 surprising social media statistics... (2013)2013-11-22 EITF25 – Internet: Technology and Applications 6
![Page 7: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/7.jpg)
Client/server paradigm
• Most early applications were based on it– http– ftp– e-mail
2013-11-22 EITF25 – Internet: Technology and Applications 7
![Page 8: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/8.jpg)
File Transfer Protocol (FTP) - 1971
• File transfer between two computers• TCP/IP
• Not so straightforward– File conventions– Data representations– Directory structures
2013-11-22 EITF25 – Internet: Technology and Applications 8
![Page 9: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/9.jpg)
Controlconnection
Dataconnection
FTP: basic model
Control connection• Open for entire session• Commands & responses
– ASCII
Data connection• New one for each file
20
21
2013-11-22 EITF25 – Internet: Technology and Applications 9
![Page 10: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/10.jpg)
FTP: Data connection
• Client issues passive open– Sends PORT# to server
• Server issues active open– server:port20 client:port #
• All preparations trhough control connection
2013-11-22 EITF25 – Internet: Technology and Applications 10
![Page 11: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/11.jpg)
FTP: Control connection
2013-11-22 EITF25 – Internet: Technology and Applications 11
CO
MM
AN
DS
RES
PON
SES
![Page 12: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/12.jpg)
FTP
• Session
2013-11-22 EITF25 – Internet: Technology and Applications 12
![Page 13: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/13.jpg)
Electronic mail (e-mail) - 1971
• The first e-mail was sent between two computers in the same room.
• To separate the user from the host computer, the @ sign was inserted.It was unused onthe keyboard. 132013-11-22 EITF25 – Internet: Technology and Applications
![Page 14: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/14.jpg)
1
2
3
4 5 6
7
8
9
E-mail: basic model
pull
2013-11-22 EITF25 – Internet: Technology and Applications 14
![Page 15: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/15.jpg)
E-mail: protocols used• SMTP
– Simple mail transfer protocol
• POP– Post office protocol
• IMAP– Internet mail access protocol
2013-11-22 EITF25 – Internet: Technology and Applications 15
![Page 16: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/16.jpg)
E-mail: server architecture
Sender & receiver in one
• Not a very good representation!
A holistic view
2013-11-22 EITF25 – Internet: Technology and Applications 16
INTERNET
Local client
SMTP(in/out)
POP
Local client
Inte
rnet
SMTP
SMTP
POP
SMTP
![Page 17: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/17.jpg)
E-mail: Web-based services
2013-11-22 EITF25 – Internet: Technology and Applications 17
![Page 18: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/18.jpg)
See you in 15’ :)
• After the break– P2P, BitTorrent– VoIP, Skype
2013-11-22 18EITF25 – Internet: Technology and Applications
![Page 19: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/19.jpg)
Performance challenges
• Client/server archictures– Standardized protocols like HTTP– Heavy traffic load on network infrastructure– Unicast transmission– Delays due to overloaded access networks– Single point of failure
2013-11-22 EITF25 – Internet: Technology and Applications 19
![Page 20: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/20.jpg)
One solution: P2P (and caches)
• Spotify
2013-11-22 EITF25 – Internet: Technology and Applications 20http://www.csc.kth.se/~gkreitz
![Page 21: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/21.jpg)
Result: better load distribution
212013-11-22 EITF25 – Internet: Technology and Applicationshttp://www.csc.kth.se/~gkreitz
![Page 22: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/22.jpg)
Peer-to-peer (P2P) paradigm
2013-11-22 EITF25 – Internet: Technology and Applications
• Users sharing data form network of peers• First P2P file sharing 1987
– WWIVnet bulletin board by Wayne Bell
• Gained popularity 1999– Napster by Shawn Fanning
22
![Page 23: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/23.jpg)
P2P networks
Centralised• Directory server
Decentralised• Overlay network
– Logical on top of physical
• A) unstructured– Nodes linked randomly– Queries flood network
• B) structured– Nodes linked with rules (DHT)– More efficient query resolving
• Initial list of nodes provided
2013-11-22 EITF25 – Internet: Technology and Applications 23
![Page 24: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/24.jpg)
Distributed Hash Tables (DHT)
• A hash function is an algorithm that maps data of variable length to data of fixed length. (m bits)
– Node ID = hash (peer IP address)– Key = hash (file name)
• DHT distributes data among a set of nodes.– Each peer is responsible for a portion of data.
• DHT routes a query to responsible node– Peers have partial knowledge about whole net.
2013-11-22 EITF25 – Internet: Technology and Applications 24
![Page 25: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/25.jpg)
DHT address space
• Node ID = hash (peer IP address)• Key = hash (file name)
2013-11-22 EITF25 – Internet: Technology and Applications 25
![Page 26: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/26.jpg)
DHT example
• Example m = 5– Node ID (5)– Key (14)– Ref (17)
2013-11-22 EITF25 – Internet: Technology and Applications 26
![Page 27: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/27.jpg)
P2P example: BitTorrent
• Group of peers work together to give all peers a copy of shared file.– Torrent– Swarm– Seed– Leech– Tracker
• No downloading whole file from one peer
2013-11-22 EITF25 – Internet: Technology and Applications 27
![Page 28: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/28.jpg)
Tracker
• Provides list of peers for given torrent
2013-11-22 EITF25 – Internet: Technology and Applications 28
BitTorrent Server
New peer
![Page 29: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/29.jpg)
Voice over IP (VoIP)
SIP
• Session Initiation Protocol
• IETF standard
H.323
• Communication (telephone, computer)
• ITU-T standard
2013-11-22 EITF25 – Internet: Technology and Applications 29
• Internet telephony– Uses two protocols
![Page 30: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/30.jpg)
Session Initiation Protocol (SIP)
• Application layer protocol• Multimedia session management• Text-based messages
• Various address types
2013-11-22 30EITF25 – Internet: Technology and Applications
![Page 31: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/31.jpg)
A simple SIP session
2013-11-22 31EITF25 – Internet: Technology and Applications
![Page 32: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/32.jpg)
Tracking the callee
2013-11-22 32EITF25 – Internet: Technology and Applications
![Page 33: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/33.jpg)
H.323
• Communication (telephone, computer)– Gateway = 5-layer translation device– Gatekeeper = registrar
2013-11-22 33EITF25 – Internet: Technology and Applications
![Page 34: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/34.jpg)
H.323 protocols
2013-11-22 34EITF25 – Internet: Technology and Applications
Resource reservationCompression method negotiation
Connection setupAudio exchange & management
![Page 35: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/35.jpg)
H.323 session
2013-11-22 35EITF25 – Internet: Technology and Applications
![Page 36: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/36.jpg)
Counter-example: Skype
2013-11-22 EITF25 – Internet: Technology and Applications 36
![Page 37: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/37.jpg)
Evolution of Internet usage
• Traffic volumes generated by users
2013-11-22 EITF25 – Internet: Technology and Applications
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: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/38.jpg)
Content distribution architectures
• Multimedia– Content stored in back-end server clusters (cloud)– Distributed to clients upon requested
2013-11-22 EITF25 – Internet: Technology and Applications
Internet
Content Clients 38
![Page 39: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/39.jpg)
Example: Live sport channel at TV4
2013-11-22 EITF25 – Internet: Technology and Applications 39
![Page 40: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/40.jpg)
Summary: Application Layer (2)
• A little history behind WWW• Client/server applications
– ftp, file transfer– e-mail, message exchange
• P2P applications– Bittorrent, file sharing– Skype, Internet telephony
• Streaming multimedia applications
2013-11-22 EITF25 – Internet: Technology and Applications 40
![Page 41: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/41.jpg)
Appendix
Connecting Devices
![Page 42: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/42.jpg)
Connecting devices (1)
ApplicationPresentation
SessionTransportNetwork
LinkPhysical
ApplicationPresentation
SessionTransportNetwork
LinkPhysical
LinkPHY PHY
Sender Receiver
Switch
ProtocolData
2013-11-22 EITF25 – Internet: Technology and Applications 42
![Page 43: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/43.jpg)
Switch
• used within a local network
2013-11-22 EITF25 – Internet: Technology and Applications 43
![Page 44: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/44.jpg)
Connecting devices (2)
ApplicationPresentation
SessionTransportNetwork
LinkPhysical
ApplicationPresentation
SessionTransportNetwork
LinkPhysical
NetworkLink LinkPHY PHY
Sender ReceiverProtocolData
2013-11-22 EITF25 – Internet: Technology and Applications
Router
44
![Page 45: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/45.jpg)
Router
• used between networks using the same network protocol
2013-11-22 EITF25 – Internet: Technology and Applications
IP network IP network
45
![Page 46: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/46.jpg)
Connecting devices (3)
ApplicationPresentation
SessionTransportNetwork
LinkPhysical
ApplicationPresentation
SessionTransportNetwork
LinkPhysical
ApplicationP. P.S. S.T. T.
Net NetLink LinkPHY PHY
Sender ReceiverData
2013-11-22 EITF25 – Internet: Technology and Applications
Gateway
46
![Page 47: Application Layer -2- User Applications...• Client issues passive open – Sends PORT# to server ... • Application layer protocol • Multimedia session management • Text-based](https://reader030.fdocuments.in/reader030/viewer/2022013019/5e4d385c7421b475de5bfe5d/html5/thumbnails/47.jpg)
Gateway
• used between networks of different types
2013-11-22 EITF25 – Internet: Technology and Applications
IP-network Mobile network
47