The Application Layer application and application requirements sample

  • Slides: 25
Download presentation
The Application Layer · · application and application requirements sample network applications and protocols

The Application Layer · · application and application requirements sample network applications and protocols · · email: SMTP, POP 3 WWW: http 1. 1 teleconferencing reading: Tannenbaum 7. 4, 7. 6, 7. 7 Ross, Kurose 2. 1 - 2. 5, 2. 9

Network Applications our goal: understand · service requirements applications place on network infrastructure ·

Network Applications our goal: understand · service requirements applications place on network infrastructure · protocols distributed applications use to implement application two views: · applications drive technology · build it and they will come

Application Requirements · · · · bandwidth: how many bits/sec required? Smooth or bursty

Application Requirements · · · · bandwidth: how many bits/sec required? Smooth or bursty traffic stream? protocol processing: how many MIPs required for application software and underlying protocols? holding time: how long does application run? data-level reliability: reliable (in-order, no loss) delivery needed? performance: constraints on maximum application-toapplication delay, tail of delay distribution? QOS: quality of service guarantees required? communication structure: 1 -1, 1 -many, many-many? security: authentication, encryption required?

Application Requirements

Application Requirements

Application Structure network application distributed in nature · set of communicating application-level processes (usually)

Application Structure network application distributed in nature · set of communicating application-level processes (usually) on different hosts provide/implement

Application Structure client server model: · server offers service via well defined interface, client

Application Structure client server model: · server offers service via well defined interface, client request service · client: how to locate/request service · server how/whether to provide service · example: WWW client (browser), server peer/peer model: · symmetric: each process an equal · example: teleconferencing both require transport of request/replies, sharing of data

Application Example: email · generic issues: · · · addressing: identities of receiver/sender, format

Application Example: email · generic issues: · · · addressing: identities of receiver/sender, format of address info privacy/security notification of receipt, reading, disposition different types of media: text, audio, video, document types competing email standards that don’t interoperate · mail gateways convert from one format to another

Internet Mail: SMTP: simple mail transfer protocol · · · RFC 821, RFC 822

Internet Mail: SMTP: simple mail transfer protocol · · · RFC 821, RFC 822 define protocol activities and message structure for SMTP RFC: request for comments are Internet draft, standards, information documents. locations: ftp: //nic. ddn. mil, http: //www. cis. ohiostate. edu/hypertext/information/rfc. html · uses underlying reliable transport service (TCP)

SMTP Sending mail: · essentially a SMTP-mediated file transfer: sender SMTP protocol entity sends

SMTP Sending mail: · essentially a SMTP-mediated file transfer: sender SMTP protocol entity sends to receiver SMTP protocol entity · · sender learns receivers host address (how? ) sender contacts receiver at well known “port” number (25) at that host

SMTP sender-receiver commands SMTP sender and receiver exchange typical of peer interactions: · ·

SMTP sender-receiver commands SMTP sender and receiver exchange typical of peer interactions: · · control commands, replies, data three basic steps: “greeting”, data exchange, “goodbye”

SMTP sender-receiver commands

SMTP sender-receiver commands

Example SMTP Exchange

Example SMTP Exchange

Another Example gaia 3% telnet gaia. cs. umass. edu 25 Trying 128. 119. 40.

Another Example gaia 3% telnet gaia. cs. umass. edu 25 Trying 128. 119. 40. 186… Connected to gaia. Escape character is '^]'. 220 gaia. cs. umass. edu ESMTP Sendmail 8. 7. 6/8. 6. 9 ready at Wed, 11 Feb 1998 21: 13: 58 -0500 (EST) HELO abc. com 250 gaia. cs. umass. edu Hello gaia [128. 119. 40. 186], pleased to meet you MAIL FROM: <towsley@abc. com> 250 <towsley@abc. com>. . . Sender ok RCPT TO: <towsley@gaia. cs. umass. edu 553 <towsley@gaia. cs. umass. edu. . . Unbalanced '<’

Another Example (cont. ) RCPT TO: <towsley@gaia. cs. umass. edu> 250 Recipient ok DATA

Another Example (cont. ) RCPT TO: <towsley@gaia. cs. umass. edu> 250 Recipient ok DATA 354 Enter mail, end with ". " on a line by itself From: towsley@abc. com … Don. 250 VAA 04032 Message accepted for delivery QUIT 221 gaia. cs. umass. edu closing connection

SMTP: Closing Comments · extensions to SMTP: · · MIME (multipurpose Internet mail extensions):

SMTP: Closing Comments · extensions to SMTP: · · MIME (multipurpose Internet mail extensions): multiple body parts, multimedia mail, multiple fonts and character sets, RFC 1324 PEM (privacy-enhanced mail): RFC 1422 -1424

· · Post Office Protocol (POP 3) SMTP assumes there is an SMTP server

· · Post Office Protocol (POP 3) SMTP assumes there is an SMTP server at recipient · · SMTP can also deliver to a Post Office (server) client can retrieve mail remotely (e. g. , over net) using Post Office Protocol (POP 3) to interact with server. Three phases: · greeting · transactions (retrieve mail) · quit mail stored at client Interactive Mail Access Protocol (IMAP) · similar to POP 3 except mail stored at server

Hypertext Transfer Protocol: http · WWW implemented using client/server paradigm: · · client (browser)

Hypertext Transfer Protocol: http · WWW implemented using client/server paradigm: · · client (browser) requests and displays received html documents server receives requests, responds with requested html documents http protocol defines format of packets exchanged between client and server, actions taken upon receipt http is a stateless, transaction-oriented protocol: · · client contacts server at port 80, using TCP client makes request to server reply from server to client TCP connection closed

Http (cont. ) · · request/replies have headers and bodies similar to SMTP and

Http (cont. ) · · request/replies have headers and bodies similar to SMTP and MIME RFC 2068 (long!) defines http

HTTP Request Message · · sent from client to server general format: · ·

HTTP Request Message · · sent from client to server general format: · · · request line (method, identifier, version) header (additional info) body

Example http Request Message Suppose you access http: //gaia. cs. umass. edu/cs 653 -1998/index.

Example http Request Message Suppose you access http: //gaia. cs. umass. edu/cs 653 -1998/index. html: sample GET command plus header: GET /cs 653 -1998/index. html HTTP/1. 0 User-Agent: Mozilla/2. 01 (X 11; I; IRIX 5. 2 IP 7) Accept: image/gif, image/x-bitmap, image/jpeg /* a blank line */

http Reply Message · · sent from server to client general format: · ·

http Reply Message · · sent from server to client general format: · · · status line (status code, text phrase) header (additional info) body

Example http reply Message a sample http server reply: HTTP/1. 0 200 Document follows

Example http reply Message a sample http server reply: HTTP/1. 0 200 Document follows MIME-Version: 1. 0 Server: CERN/3. 0 Date: Wednesday 10 -Apr-96 03: 59: 47 GMT Content-type: text/html Content-length: 2168 Last-Modified: Friday 06 -Oct-95 07: 16: 52 GMT /* a blank line */ <html> <head> : /* HTML text of the Web page */ </html>

Teleconferencing applications: requirements goal: interactive (real time) communication with multiple media components (audio, video,

Teleconferencing applications: requirements goal: interactive (real time) communication with multiple media components (audio, video, text (whiteboard). continuous media such as audio, video · require “smooth” playout at receiver · · · Internet does not provide jitter-free communication · jitter: change in network delay receiver buffers packets and “plays out” periodically delayed playout of first packet allows receiver buffer to “absorb” network jitter late packets lost can tolerate “some” lost packets

audio samples Audio Playout time Q: what kind of service, best effort or guaranteed

audio samples Audio Playout time Q: what kind of service, best effort or guaranteed with resource reservation?

Applications: Summary · · diverse applications place widely varying service requirements on network bandwidth,

Applications: Summary · · diverse applications place widely varying service requirements on network bandwidth, reliability, real-time constraint, Qo. S guarantees, security application-level protocols between distributed entities implement application using network services via network API client-server paradigm applications rule!