Application Layer - PowerPoint PPT Presentation

1 / 127
About This Presentation
Title:

Application Layer

Description:

Lecture 2 Application Layer 2 - * – PowerPoint PPT presentation

Number of Views:250
Avg rating:3.0/5.0
Slides: 128
Provided by: GeneM151
Category:

less

Transcript and Presenter's Notes

Title: Application Layer


1
Lecture 2
  • Application Layer

2
Lecture 2 Outline
  • Application Architectures
  • Host-Based, Client-Based, and Client-Server
    Architectures
  • Choosing Architectures
  • World Wide Web
  • How the Web Works
  • Inside an HTTP Request HTTP Response
  • Electronic Mail
  • How E-Mail Works, Inside an SMTP Packet
  • Listserv, Attachments in MIME
  • Other Applications
  • FTP, Telnet, Instant Messaging, Videoconferencing

3
Multi-layer Models
4
Application Layer - Introduction
Application Layer
Applications (e.g., email, web, word processing)
Transport Layer
Network Layer
  • Functions of Application Layer
  • Data storage
  • Storing of data generated by programs (e.g.,
    files, records)
  • Data access logic
  • Processing required to access stored data (e.g.,
    SQL)
  • Application logic
  • Business logic such as word processors,
    spreadsheets
  • Presentation logic
  • Presentation of info to user and acceptance of
    user commands

5
Application Architectures
  • Determined by how functions of application
    programs are spread among clients and servers
  • Host-based Architectures
  • Server performs almost all functions
  • Client-based architectures
  • Client performs most functions
  • Client-server architectures
  • Functions shared between client and server

6
Application Architectures
  • Determined by how functions of application
    programs are spread among clients and servers
  • Host-based Architectures
  • Server performs almost all functions
  • Client-based architectures
  • Client performs most functions
  • Client-server architectures
  • Functions shared between client and server

7
Host-Based Architectures
or a PC running a terminal emulation program
  • Client captures key strokes then sends them to
    the mainframe
  • Client displays information according to the
    servers instructions

8
Host-based Architecture Problems
  • Host becoming a bottleneck
  • All processing done by the host, which can
    severely limit network performance
  • Host upgrades typically expensive and lumpy
  • Available upgrades require large scale and often
    costly jumps in processing and memory
  • Network demand grows more incrementally than does
    the host capacity
  • May see poor fit (too much or too little) between
    host performance and network demand

9
Application Architectures
  • Determined by how functions of application
    programs are spread among clients and servers
  • Host-based Architectures
  • Server performs almost all functions
  • Client-based architectures
  • Client performs most functions
  • Client-server architectures
  • Functions shared between client and server

10
Client-Based Architectures
Example Using a word processing package on a PC
and storing data files on a server
11
Client-Based Architecture Problems
  • Data traffic must travel back and forth between
    server and client
  • Example when the client program is making a
    database query, the ENTIRE database must travel
    to the client before the query can be processed
  • Often the large file sizes moving across the LAN
    can yield a poor result in network performance

12
Application Architectures
  • Determined by how functions of application
    programs are spread among clients and servers
  • Host-based Architectures
  • Server performs almost all functions
  • Client-based architectures
  • Client performs most functions
  • Client-server architectures
  • Functions shared between client and server

13
Client-Server Architectures
Server (PC, mini, mainframe)
Client (PC)
Example Using a Web browser to obtain web pages
uses logic balanced between the client and server
14
Client-Server Architectures
  • Advantages
  • More efficient because of distributed processing
  • Allow hardware and software from different
    vendors to be used together
  • Disadvantages
  • Difficulty in getting software from different
    vendors to work together smoothly
  • May require Middleware, a third category of
    software

15
Middleware
client application programs
a standard way of translating between software
from different vendors
  • Manages message transfers
  • Insulates network changes from the clients (e.g.,
    adding a new server)

Middleware
server application programs
  • Examples of standards for Middleware
  • Distributed Computing Environment (DCE)
  • Common Object Request Broker Architecture (CORBA)
  • Open Database Connectivity (ODBC)

16
Multi-tier Architectures
  • Involve more than two computers in distributing
    application program logic
  • 2-tier architecture
  • Uses clients and servers in a balance, very
    popular approach in simple LANs
  • 3-tier architecture
  • 3 sets of computers involved
  • N-tier architecture
  • More than three sets of computers used, more
    typical across complex organizations
  • Allows load balancing across servers

17
1-tier architecture Example Mainframe
architecture
18
2-tier Architecture
19
3-tier Architecture
20
3-tier Architecture
21
3-tier Architecture
22
N-tier Architecture
23
Multi-tier Architectures
  • Advantages
  • Better load balancing
  • More evenly distributed processing. (e.g.,
    application logic distributed between several
    servers.)
  • More scalable
  • Only servers experiencing high demand need be
    upgraded
  • Disadvantages
  • Heavily loaded network
  • More distributed processing necessitates more
    data exchanges
  • Difficult to program and test due to increased
    complexity

24
Thin and Thick Clients
  • Classification depends on how much of the
    application logic resides on the client or server
  • Thin client
  • Little or no application logic on client
  • Becoming popular because easier to manage, (only
    the server application logic generally needs to
    be updated)
  • The best example World Wide Web architecture
    (uses a two-tier, thin client architecture)
  • Thick client
  • All or most of the application logic resides on
    the client

25
Thin-Client Example Web Architecture
Web Server (PC, mini, mainframe)
Client (PC)
Presentation logic
Application Logic Data Access logic Data Storage
26
Criteria for Choosing Architecture
  • Infrastructure Cost
  • Cost of servers, clients, and circuits
  • Mainframes very expensive terminals, PCs
    inexpensive
  • Development Cost
  • Mainly cost of software development
  • Software expensive to develop off-the-shelf
    software inexpensive
  • Scalability
  • Ability to increase (or decrease) in computing
    capacity as network demand changes
  • Mainframes not scalable PCs highly scalable

27
Choosing an Architecture
28
Applications Layer Examples
  • World Wide Web
  • E-mail
  • File Transfer
  • Videoconferencing
  • Instant Messaging

29
Applications Layer Examples
  • World Wide Web
  • E-mail
  • File Transfer
  • Videoconferencing
  • Instant Messaging

30
World Wide Web
31
World Wide Web
  • Web began with two innovative ideas
  • Hypertext
  • A document containing links to other documents
  • Uniform Resource Locators (URLs)
  • A formal way of identifying links to other
    documents
  • Invention of WWW (1989)
  • By Tim Berners-Lee at CERN in Switzerland
  • First graphical browser, Mosaic, (1993)
  • By Marc Andressen at NCSA in USA later founded
    Netscape

CERN - Conseil Européen pour la Rechèrche
Nucléaire (Berners-Lee, T. (2000) Weaving the
Web. New York HarperCollins. P. 4) NCSA -
National Center for Supercomputing Applications
32
(No Transcript)
33
(No Transcript)
34
HTTP vs HTML
  • HTML hypertext markup language
  • Definitions of tags that are added to Web
    documents to control their appearance
  • HTTP hypertext transfer protocol
  • The rules governing the conversation between a
    Web client and a Web server

Both were invented at the same time by the same
person
35
Reminder What is a protocol?
  • In diplomatic circles, a protocol is the set of
    rules governing a conversation between people
  • We have seen that the client and server carry on
    a machine-to-machine conversation
  • A network protocol is the set of rules governing
    a conversation between a client and a server
  • There are many protocols, HTTP is just one

36
A HTTP conversation
Client
Server
  • OK
  • Send page or error message
  • OK
  • I would like to open a connection
  • GET ltfile locationgt
  • Display response
  • Close connection

HTTP is the set of rules governing the format and
content of the conversation between a Web client
and server
37
An HTTP example
  • The message requesting a Web page must begin with
    the work GET and be followed by a space and the
    location of a file on the server, like this

GET /fac/lpress/shortbio.htm
The protocol spells out the exact message format,
so any Web client can retrieve pages from any Web
server.
38
How the Web Works
Main Web communications protocol HTTP
Hypertext Transfer Protocol
Server Computer
HTTP Request
Client Computer
HTTP Response
A request-response cycle includes multiple
steps since web pages often contain embedded
files, such as graphics, each requiring a
separate response.
Clicking on a hyperlink or typing a URL into a
browser starts a request-response cycle
39
HTTP Request Message
Request line (command, URL, HTTP version number)
required
(If the user types in the URL by themselves, then
the referring page is blank.)
Request header (information on the browser,
date, and the referring page )
optional
Request body (information sent to the server,
such as from a form)
optional
40
Example of an HTTP Request
Note that this HTTP Request message has no Body
part.
41
HTTP Response Message
Response status (http version number, status
code, reason)
optional
Response header (information on the server, date,
URL of the page retrieved, format used )
optional
Response body (requested web page)
required
42
Example of an HTTP Response
43
http viewer http//www.rexswain.com/httpview.html

44
(No Transcript)
45
(No Transcript)
46
Web sniffer http//web-sniffer.net/
47
(No Transcript)
48
(No Transcript)
49
HTML - Hypertext Markup Language
  • A protocol used to format Web pages
  • Also developed at CERN (initially for text files)
  • Tags are embedded in HTML documents
  • include information on how to format the file
  • Extensions to HTML needed to format multimedia
    files
  • XML - Extensible Markup Language
  • A new markup language becoming popular

50
(No Transcript)
51
HTTP is an application layer protocol
  • The Web client and the Web server are application
    programs
  • Application layer programs do useful work like
    retrieving Web pages, sending and receiving email
    or transferring files
  • Lower layers take care of the communication
    details
  • The client and server send messages and data
    without knowing anything about the communication
    network

52
The application layer is boss the top layer
Layer Function
Application Do useful work like Web browsing, email, and file transfer
Lower layers Handle communication between the client and server
  • Your boss says Send this package to Miami -- I
    don't care if you use Federal Express, UPS, or
    any other means. Also, let me know when it
    arrives or if it cannot be delivered for some
    reason.
  • The application program says Send this request
    to the server -- I don't care how you do it or
    whether it goes over phone lines, radio, or
    anything else about the details. Just send the
    message, and let me know when it arrives or if it
    cannot be delivered for some reason.

53
Applications Layer Examples
  • World Wide Web
  • E-mail
  • File Transfer
  • Videoconferencing
  • Instant Messaging

54
E-mail Standards
55
E-mail Standards
  • SMTP - Simple Mail Transfer Protocol
  • Main e-mail standard for
  • Originating user agent and the mail transfer
    agent
  • Between mail transfer agents
  • Originally written to handle only text files
  • Usually used in two-tier client-server
    architectures
  • Post Office Protocol (POP) and Internet Mail
    Access Protocol (IMAP)
  • Main protocols used between the receiver user
    agent and mail transfer agent
  • Main difference with IMAP, messages can be left
    at the server after downloading them to the
    client
  • Other competing standards
  • Common Messaging Calls (CMC), X.400

56
Two-Tier E-mail Architecture
  • User agent is another word for an e-mail client
    application
  • Run on client computers
  • Send e-mail to e-mail servers
  • Download e-mail from mailboxes on those servers
  • Examples Eudora, Outlook, Netscape Messenger
  • Mail transfer agent is another word for the mail
    server application
  • Used by e-mail servers
  • Send e-mail between e-mail servers
  • Maintain individual mailboxes.

57
Host Based e-mail Architectures
  • An old method used on UNIX based hosts
  • Similar to client-server architecture, except
  • Client PC replaced by a terminal (or terminal
    emulator)
  • Sends all keystrokes to the server
  • Display characters received from the server
  • All software resides on the server
  • Takes client keystrokes and understand users
    commands
  • Creates SMTP packets and sends them to next mail
    server
  • Useful when traveling in locations with poor
    internet facilities

58
(No Transcript)
59
Web-based e-mail
Server computer with
Web server software
HTTP request
Client computer with
LAN
SMTP packet
Web browser
Server computer with
email server software
HTTP response
SMTP packet
Internet
SMTP packet
Server computer with
e-mail server software
HTTP request
Client computer with
Web browser
LAN
IMAP or POP packet
Server computer with
HTTP response
IMAP packet
Web server software
60
(No Transcript)
61
Sample SMTP Message
Note that this SMTP message has no attachments.
62
(No Transcript)
63
MIME
  • Multipurpose Internet Mail Extension
  • A graphics capable mail transfer agent protocol
    (to send graphical information in addition to
    text)
  • SMTP was designed years ago for text transfer
    only
  • MIME software is included as part of an e-mail
    client
  • Translates graphical information into text
    allowing the graphic to be sent as part of an
    SMTP message (as a special attachment)
  • Receivers e-mail client then translates the MIME
    attachment from text back into graphical format

64
(No Transcript)
65
(No Transcript)
66
(No Transcript)
67
Applications Layer Examples
  • World Wide Web
  • E-mail
  • File Transfer
  • Videoconferencing
  • Instant Messaging
  • ListServ Forums and discussion group lists

68
Listserv Discussion Groups
  • Mailing lists of users who join to discuss some
    special topic (e.g., cooking, typing, networking)
  • Some permit any member to post messages, some are
    more restricted
  • Parts of listserv
  • Listserv Processor
  • Process commands ( subscriptions, etc,)
  • Listserv Mailer
  • Receive a message and resend it to everyone
  • To subscribe
  • Send an email to Listserv processor (address of
    the processor is different than the address of
    mailer)

69
(No Transcript)
70
Applications Layer Examples
  • World Wide Web
  • E-mail
  • File Transfer
  • Videoconferencing
  • Instant Messaging

71
(No Transcript)
72
File Transfer Protocol (FTP)
  • Enables sending and receiving files over the
    Internet
  • Requires an application program on the client
    computer and a FTP server program on a server
  • Commonly used today for uploading web pages
  • Many packages available using FTP
  • WS-FTP (a graphical FTP software)
  • FTP sites
  • Closed sites
  • Requires account name and password
  • Anonymous sites
  • Account name anonymous password email address

73
(No Transcript)
74
(No Transcript)
75
(No Transcript)
76
(No Transcript)
77
Upload my website files
78
(No Transcript)
79
(No Transcript)
80
(No Transcript)
81
(No Transcript)
82
(No Transcript)
83
(No Transcript)
84
(No Transcript)
85
(No Transcript)
86
(No Transcript)
87
Applications Layer Examples
  • World Wide Web
  • E-mail
  • File Transfer
  • Videoconferencing
  • Instant Messaging
  • telNet

88
telnet
89
Telnet
  • Allows one computer to log into another computer
  • Remote login enabling full control of the host
  • Requires an application program on the client
    computer and a Telnet server program on the
    server
  • Client program emulates a dumb terminal off the
    server
  • Many packages available conforming Telnet
  • EWAN
  • Requires account name and password
  • Anonymous sites similar to FTP approach
  • Account name anonymous password email address

90
telNet from a webbrowser
91
Connecting to the Library of Congress
92
type 1, press ENTER
93
Connecting to Weather Underground
94
(No Transcript)
95
Connecting to National Institutes of Health
96
main menu
L
97
Applications Layer Examples
  • World Wide Web
  • E-mail
  • File Transfer
  • Videoconferencing
  • Instant Messaging

98
(No Transcript)
99
Instant Messaging (IM)
  • A client-server program that allows real-time
    typed messages to be exchanged
  • Client needs an IM client software
  • Server needs an IM server package
  • Some types allow voice and video packets to be
    sent
  • Like a telephone
  • Examples include AOL, ICQ, Live messenger, Yahoo
    messenger, Skype, etc.
  • Two step process
  • Telling IM server that you are online
  • Chatting

100
How Instant Messaging Works
When the sender types in text, the IM client
sends the text in a packet to the IM server which
relays it to the receiver.
IM packet
LAN
IM packet
Sender sends a request to the IM server telling
it that sender is online. If a friend connects,
the IM server sends a packet to senders IM
client and vice versa.
LAN
IM packet
Internet
If a chat session has more than two clients,
multiple packets are sent by the IM server. IM
servers can also relay information to other IM
servers.
IM packet
LAN
101
Applications Layer Examples
  • World Wide Web
  • E-mail
  • File Transfer
  • Videoconferencing
  • Instant Messaging

102
(No Transcript)
103
Videoconferencing
  • Provides real time transmission of video and
    audio signals between two or more locations
  • Allows people to meet at the same time in
    different locations
  • Saves money and time by not having to move people
    around
  • Typically involves matched special purpose rooms
    with cameras and displays
  • Desktop videoconferencing
  • Low cost application linking small video cameras
    and microphones together over the Internet
  • No need for special rooms
  • Example Net Meeting software on clients
    communicating through a common videoconference
    server

104
(No Transcript)
105
Videoconferencing Standards
  • Proprietary early systems
  • Common standards in use today
  • H.320
  • Designed for room-to-room videoconferencing over
    high-speed phone lines
  • H.323
  • Family of standards designed for desktop
    videoconferencing and just simple audio
    conferencing over Internet
  • MPEG-2
  • Designed for faster connections such as LAN or
    privately owned WANs

106
Applications Layer Examples
  • World Wide Web
  • E-mail
  • File Transfer
  • Videoconferencing
  • Instant Messaging
  • Webcasting

107
Webcasting
  • Special type of uni-directional videoconferencing
  • Content is sent from the server to users
  • Process
  • Content created by developer
  • Downloaded as needed by the user
  • Played by a plug-in to a Web browser
  • No standards for webcasting yet
  • Defacto standards products by RealNetworks

108
(No Transcript)
109
Applications Layer Examples
  • World Wide Web
  • E-mail
  • File Transfer
  • Videoconferencing
  • Instant Messaging
  • Webcasting
  • Remote desktop
  • Other applications

110
Diagram of Remote Desktop?
Windows XP Professional Computer
User at Remote Computer
Remote Desktop is single session.
111
How Do I Enable Remote Desktop?
  • Enabled by selecting a check box (open My
    Computer and click the Remote tab). See next
    slide.
  • By default, Administrators can remotely connect.
  • No reboot required.

112
UI to Enable Remote Desktop and Add Users
113
Remote Desktop Connection UI
  • Click Start, point to All Programs, point to
    Accessories, point to Communications, click
    Remote Desktop Connection.

114
What Can You Do with Remote Desktop?
  • File system redirection (drive mapping)
  • File copy redirection
  • Local and network printer redirection
  • Audio redirection
  • High color support

115
What Can You Do with Remote Desktop? (2)
  • Have local computer keyboard shortcuts sent to
    remote computer
  • Smart card support
  • Ports redirection
  • Access all your installed applications

116
Connection Settings
  • Default.rdp is a hidden file in My Documents that
    contains the settings for Remote Desktop
    Connection.
  • Stored passwords are encrypted.
  • In Windows 95, Windows 98, Windows Me, and
    Windows NT 4.0 clients, we never store the
    passwords.
  • Can save the .rdp files to your desktop and treat
    them like shortcuts.

117
Windows Key Combinations and Audio
  • Three options for Windows key combinations
  • On Local Computer
  • On Remote Computer
  • In Full Screen Mode only
  • So no need to remember a different set of
    shortcuts like in Windows 2000.
  • Audio Redirection
  • Leave at remote computer
  • Do not play
  • Bring to local computer

118
Local Resources Tab
  • Under Local Devices, Smart Cards will appear if
    Smart Cards are installed on local computer.

119
Audio Redirection
  • Tuned to minimize the performance impact on
    network bandwidth.
  • This is negotiated "on the fly".
  • Does not redirect MIDI sound.

120
Experience Tab for Low Bandwidth Connections
  • Used to optimize connection experience.
  • By default, Remote Desktop optimized for 56 Kbps
    connections.
  • Several predefined settings or choose your own.

121
Where Can I Get Remote Desktop Connection?
  • From the Windows XP CD Take the CD with you,
    insert it in a down-level computer, and click
    "Perform Additional Tasks"
  • or
  • Download from http//www.microsoft.com/windowsxp/r
    emotedesktop/
  • or
  • Use Remote Desktop Web Connection

122
Remote Desktop Web Connection
  • ActiveX control that runs inside of Internet
    Explorer 4.0 or later.
  • Installed by going to
  • Add/Remove Programs
  • Windows Components
  • Internet Information Server Details
  • World Wide Web Service Details
  • Remote Desktop Web Connection
  • Finally navigate to computer with Internet
    Explorer to http//ltmycomputergt/tsweb/.

123
Get Access to Your Desktop Through Internet
Explorer
124
Applications Layer Examples
  • World Wide Web
  • E-mail
  • File Transfer
  • Videoconferencing
  • Instant Messaging
  • Webcasting
  • Other applications

125
(No Transcript)
126
(No Transcript)
127
Implications for Management
  • Network may be used to provide a worry-free
    environment for applications
  • Network is the critical infrastructure over which
    the wide variety of strategic applications enable
    an organization to compete in its environment
  • The applications running on the network have the
    potential for changing the organization
  • Dramatic increase in number and type of
    applications
  • Rapid growth in amount and type of networking
    traffic over time
  • Different implication on network design and
    management
  • Increased operating cost for the network function
Write a Comment
User Comments (0)
About PowerShow.com