Professional Documents
Culture Documents
By David G. Messerschmitt: Understanding Networked Applications: A First Course
By David G. Messerschmitt: Understanding Networked Applications: A First Course
A First Course
Chapter 5
by
David G. Messerschmitt
Client Client
host host
Server
host
Client
Server Peer-to-peer
Client/server
Understanding Networked Applications 4 A First Course
Distinctions
• Client-server
– Asymmetric relationship
– Client predominately makes requests, server
makes replies
• Peer-to-peer
– Symmetric relationship
Server
Client Client
Server
Client
Client
Chat server
aggregates typing Other user’s clients
from all users and display aggregated
Chat clients send sends to all clients typing from chat
user’s typing to server
server
Understanding Networked Applications 7 A First Course
Three-tier client/server
Local-area network
Application
logic
Presentation
Host architecture
Web
browser
Web
server Common
gateway
Application interchange
logic
Databases
and DBMS
Application partition
Understanding Networked Applications 9 A First Course
Practice in defining tiers
• Online bookseller (e.g. amazon.com)
• Stock trading system (e.g. Schwab or E-
trade)
Enterprise-to-enterprise
Commerce
Consumer
Enterprise
Understanding Networked Applications 14 A First Course
software4u.com
Customers
Customer-service
Technical-support
department
department
Consumer Enterprise
Databases
Databases
Book distribution
Customers centers
books4u.com
Web server
Outside links
Databases
Acquirer Book
Customers Merchandise Orders bank distributors
Acquirer
Customer logic bank
Fullfillment logic
Databases
Book
Customers Merchandise Orders distributors
Customers
Stock market
stocks4u.com
Web server
Outside links
Databases
Information Financial
Accounts Products Orders providers markets
Information
Customer logic providers
Trading logic
Databases
Financial
Accounts Products Orders markets
Customers
flowers4u.com
Local florists
Web Push
browser server
Florist delivery
Outside link
Databases
Acquirer
Accounts Products Orders bank
Acquirer
bank
Databases