/
Application Layer Part 1 Application Layer Part 1

Application Layer Part 1 - PowerPoint Presentation

sherrill-nordquist
sherrill-nordquist . @sherrill-nordquist
Follow
350 views
Uploaded On 2019-11-20

Application Layer Part 1 - PPT Presentation

Application Layer Part 1 Daniel Graham PhD Application Layer Our Goals Examples of Application Layer Creating a network App application transport network data link physical application transport network ID: 765817

http application server layer application http layer server data cookies time network transport client loss web response request physical

Share:

Link:

Embed:

Download Presentation from below link

Download Presentation The PPT/PDF document "Application Layer Part 1" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.


Presentation Transcript

Application Layer Part 1 Daniel Graham PhD

Application Layer Our Goals:

Examples of Application Layer

Creating a network App application transport network data link physical application transport network data link physical application transport network data link physical

Application Architectures

Client Server Architecture client/server

Pure P2P Architectures peer-peer

Hybrid client-server/P2P

Process Communication Application Layer 2- 9 Internet controlled by OS controlled by app developer transport application physical link network process transport application physical link network process

Process Communication

Address Processing

Application Layer Protocol Define

Application Layer 2- 13 Transport service requirements: common apps application file transfer e-mail Web documents real-time audio/video data loss no loss no loss no loss loss-tolerant throughput elastic elastic elastic audio: 5kbps-1Mbps video:10kbps-5Mbps time sensitive no no no yes, 100’s msec

Application Layer 2- 14 Web and HTTP www.someschool.edu/someDept/pic.gif host name path name

Application Layer 2- 15 HTTP overview PC running Firefox browser server running Apache Web server iphone running Safari browser

Application Layer HTTP overview (continued)

Application Layer 2- 17 HTTP connections

Application Layer 2- 18 Nonpersistent HTTP suppose user enters URL: time www.someSchool.edu / someDepartment / home.index

Application Layer 2- 19 Non-persistent HTTP: response time time time

Persistent HTTP non-persistent HTTP issues: persistent HTTP:

HTTP request message GET / index.html HTTP/1.1\r\n Host: www- net.cs.umass.edu \r\n User-Agent: Firefox/3.6.10\r\n Accept: text/ html,application / xhtml+xml \r\n Accept-Language: en-us,en;q=0.5\r\nAccept-Encoding: gzip,deflate \r\nAccept-Charset: ISO-8859-1,utf-8;q=0.7\r\nKeep-Alive: 115\r\nConnection: keep-alive\r\n\r\n

Application Layer 2- 22 HTTP request message: general format method sp sp cr lf version URL cr lf value header field name cr lf value header field name ~ ~ ~ ~ cr lf entity body ~ ~ ~ ~

Application Layer 2- 23 Uploading form input

Application Layer 2- 24 Method types HTTP/1.0: HTTP/1.1:

Application Layer 2- 25 HTTP response message HTTP/1.1 200 OK\r\n Date: Sun, 26 Sep 2010 20:09:20 GMT\r\n Server: Apache/2.0.52 (CentOS)\r\n Last-Modified: Tue, 30 Oct 2007 17:00:02 GMT\r\n ETag: "17dc6-a5c-bf716880"\r\n Accept-Ranges: bytes\r\n Content-Length: 2652\r\n Keep-Alive: timeout=10, max=100\r\n Connection: Keep-Alive\r\n Content-Type: text/html; charset=ISO-8859-1\r\n \r\n data data data data data ...

HTTP response status codes 200 OK 301 Moved Permanently 400 Bad Request 404 Not Found 505 HTTP Version Not Supported

Trying out HTTP (client side) for yourself 1. Telnet to your favorite Web server: telnet www.cs.virginia.edu 80 2. type in a GET HTTP request: GET /~dgg6b/ HTTP/1.1 Host: www.cs .virginia.edu 3. look at response message sent by HTTP server! (or use Wireshark to look at captured HTTP request/response) For Macs you will have to brew install telnet

Application Layer 2- 28 User-server state: cookies many Web sites use cookies four components: example:

Cookies: keeping “state” (cont.) client server cookie file one week later: cookie- specific action access ebay 8734 Amazon server creates ID 1678 for user create entry ebay 8734 amazon 1678 cookie- specific action access ebay 8734 amazon 1678 backend database

Application Layer 2- 30 Cookies (continued) what cookies can be used for: cookies and privacy: cookies permit sites to learn a lot about you aside how to keep “state”:

Lets Build a webserver Live coding