Basic Concepts

Download Report

Transcript Basic Concepts

Networked
Applications
Chapter 11
Updated January 2009
Raymond Panko’s
Business Data Networks and Telecommunications, 7th edition
May only be used by adopters of the book
© 2009 Pearson Education, Inc. Publishing as Prentice Hall
Client/Server Computing
• The client does at least some of the work
Server Program
Client Program
Server
Client PC
© 2009 Pearson Education, Inc. Publishing as Prentice Hall
11-2
11-2: Client/Server Computing
3
Client/Server Processing with Request-Response Cycle
Request Message
Client Program
Response Message
Does Light I/O and
Post-Download
Processing
Client PC
Server Program
Does Heavy
Database
and Other Heavy
Processing
File Server
Use larger server as number of clients increases
© 2009 Pearson Education, Inc. Publishing as Prentice Hall
11-3
11-3: Web-Enabled Application
HTTP Request Message
Client is Browser
Client PC
HTTP Response Message
Server Program
Web-enabled applications:
Form of client server processing
that uses browsers as clients.
Almost all client PCs
now have browsers.
No need to install new software.
E-Mail Server
© 2009 Pearson Education, Inc. Publishing as Prentice Hall
11-4
E-Mail
© 2009 Pearson Education, Inc. Publishing as Prentice Hall
The E-Mail Delivery Process
Sender’s Mail
Server
Receiver’s Mail
Server
Each e-mail user has a mail server.
Sending
E-Mail
Client
The sender transmits a message to its mail server. Receiving
The sender’s mail server delivers the message
E-Mail
to the receiver’s mail server.
Client
The receiver’s mail server delivers the message
to the receiver.
© 2009 Pearson Education, Inc. Publishing as Prentice Hall
11-6
11-5: E-Mail Standards: Sending
2.
SMTP
To Send
1.
SMTP
To Send
Sender’s Mail
Server
Sending
E-Mail Client
(Outlook, etc.)
Receiver’s Mail
Server
Simple Mail Transfer Protocol
(SMTP) is used to transmit mail
in real time to a user’s mail
server or between mail servers
Receiving
E-Mail Client
(Outlook, etc.)
Sender-initiated
Note that SMTP provides immediate delivery—usually in a few seconds.
© 2009 Pearson Education, Inc. Publishing as Prentice Hall
11-7
11-5: E-Mail Standards: Receiving
3.
POP or
IMAP
to Receive
Sender’s Mail
Server
Sending
E-Mail Client
(Outlook, etc.)
Receiver’s Mail
Server
POP or IMAP to download mail to
receiver when the receiver next
downloads mail
Receiving
E-Mail Client
(Outlook, etc.)
Receiver-initiated
© 2009 Pearson Education, Inc. Publishing as Prentice Hall
11-8
11-5: E-Mail Standards: Web-Based E-Mail
SMTP
HTTP
SMTP
POP or
IMAP
Traditional
E-Mail Client
(Outlook, etc.)
On the left, we have just seen that
traditional e-mail clients send with
SMTP and receive with POP or IMAP.
On the right, Web-based e-mail clients
only need a browser and use HTTP
both to send and to receive.
Web-Based
E-Mail
Client
Browser
Server-server communication always
uses SMTP.
© 2009 Pearson Education, Inc. Publishing as Prentice Hall
11-9
HTML and HTTP
© 2009 Pearson Education, Inc. Publishing as Prentice Hall
11-7: HTML and HTTP
The Hypertext Transfer Protocol (HTTP)
is the standard for transferring messages between
the client (browser) and the server (webserver).
The Hypertext Markup Language (HTML)
is a standard for text documents that have tags to indicate
formatting and other files to be downloaded
© 2009 Pearson Education, Inc. Publishing as Prentice Hall
11-11
E-Commerce
© 2009 Pearson Education, Inc. Publishing as Prentice Hall
11-10: Electronic Commerce Functions
Browser
Webserver
Application
E-Commerce
Server
Customer
PC
External
Database
© 2009 Pearson Education, Inc. Publishing as Prentice Hall
Internal
Database
11-13
11-10: EC Functions
• Webserver Functionality, Plus…
• E-Commerce functionality
– Online catalog
– Shopping cart
– Checkout, including payment
– Customer resource management (CRM)
– Links to External Systems
• Credit card number checking
© 2009 Pearson Education, Inc. Publishing as Prentice Hall
11-14
11-10: EC Functions
• E-Commerce functionality
– Links to internal systems
• Accounting
• Pricing
• Warehousing (product availability)
• Shipment
• Etc.
© 2009 Pearson Education, Inc. Publishing as Prentice Hall
11-15
Three-Tier Architecture
presentation tier
web
browser
logic tier
web
server
and
programs
• Three-tier model is a software architecture
•Data transfer between tiers is part of the architecture
© 2009 Pearson Education, Inc. Publishing as Prentice Hall
data tier
database/
file system
Three-Tier Architecture
Presentation
Business Logic
Web browser
Payment
User/Admin
Content
Modules
Data
Database
© 2009 Pearson Education, Inc. Publishing as Prentice Hall
11-11: Application Server (3-Tier Architecture)
Client PC
with
Browser
1.
Form
Webserver
Application
2.
Server
Data
Mainframe
1.
User fills in a form
using a browser
2.
Webserver sends
form data onto an
application server
Server of
External Company
© 2009 Pearson Education, Inc. Publishing as Prentice Hall
Database
Server
11-18
11-11: Application Server (3-Tier Architecture)
Client PC
with
Browser
Webserver
3.
Mainframe
Query and
Application
Response
Server
Mainframe
3.
To get data needed to serve
the customer,
the application server
queries a mainframe database
and reads the information
in the response
Database
Server
Server of
External Company
© 2009 Pearson Education, Inc. Publishing as Prentice Hall
11-19
11-11: Application Server (3-Tier Architecture)
Client PC
with
Browser
Webserver
Application
Server
4.
DB Server Mainframe
Query and
Response
5. External Query/
Response
Database Sever Interactions (4, 5)
Application program interfaces (API)
Both internal and external database hosts
Database
Server
Server of
External Company
© 2009 Pearson Education, Inc. Publishing as Prentice Hall
11-20
11-11: Application Server (3-Tier Architecture)
Client PC
with
Browser
7.
Webpage
Webserver
Application
Server
6.
New
Webpage
6.
From the
retrieved data, the
Application Server
creates a new webpage
7.
Webserver sends
Mainframe
the webpage
to
the browser
Server of
External Company
© 2009 Pearson Education, Inc. Publishing as Prentice Hall
Database
Server
11-21
Peer-to-Peer
Computing
© 2009 Pearson Education, Inc. Publishing as Prentice Hall
11-15: Traditional Client/Server Application
Client PC
Client PC
Advantage:
Central Control
Client PC
Client PC
Client PC
Disadvantages:
Network Overload at Server
Underused Client Power
Central Control
Server Does Heavy Processing Work
© 2009 Pearson Education, Inc. Publishing as Prentice Hall
11-23
P2P Applications
• Direct service, although most P2P systems use
facilitating servers for some of the work
Peer
Peer
Peer
Peer
Peer
Peer
© 2009 Pearson Education, Inc. Publishing as Prentice Hall
11-24
Figure 11-16: Simple Peer-to-Peer (P2P)
Application
Request
Client PC
Response
Benefits:
End User Freedom
No Network Bottleneck at Server
Uses Client Capacity Better
Client PC
Problems:
Transient Presence of Clients
Transient Client IP Addresses
Security (No Central Control)
© 2009 Pearson Education, Inc. Publishing as Prentice Hall
11-25