understanding networked applications: a first course midterm one review by david g. messerschmitt

37
Understanding Networked Applications: A First Course Midterm one review by David G. Messerschmitt

Post on 20-Dec-2015

219 views

Category:

Documents


5 download

TRANSCRIPT

Understanding Networked Applications:A First Course

Midterm one review

by

David G. Messerschmitt

Understanding Networked Applications A First Course2

Copyright notice

©Copyright David G. Messerschmitt, 2000. This material may be used, copied, and distributed freely for educational purposes as long as this copyright notice remains attached. It cannot be used for any commercial purpose without the written permission of the author.

Understanding Networked Applications A First Course3

Major topics

• Past and future of computing and networking– mobility, ubiquity, embedded

• Applications– social– information management– business– e-commerce

Understanding Networked Applications A First Course4

Major topics (con’t)

• Information technology– information– processing, storage, communication– internet

• Client-server computing– two and three tier– Web

Understanding Networked Applications A First Course5

Major topics (con’t)

• Architecture– decomposition and modularity– granularity and hierarchy– interfaces and data types

• Layering– network, operating system, middleware,

application

Understanding Networked Applications A First Course6

Major ideas

• Information technology– information (content) represented as data– processing– storage– communication

Understanding Networked Applications A First Course7

Role of the Computer

Number cruncher

Informationmanagement

Communication

Time….

Understanding Networked Applications A First Course8

Past and future

• Past– centralized, timeshare, decentralized,

networked

• Future– embedded, ubiquitous, mobile

Understanding Networked Applications A First Course9

Application

• Application = something that puts technology to use to the benefit of someone

• Technology = something that puts scientific principles to use

Understanding Networked Applications A First Course10

Types of applications

• Individual = entertainment or productivity

• Social = groups of users

• Information management = access to or manipulation of information

• Educational = contribute to learning or training

• Organizational = aid mission or operations

Understanding Networked Applications A First Course11

Task group

Categories of user groups

Individual

Work group

Interest group

Citizenry

Understanding Networked Applications A First Course12

Styles of social applications

Direct

Publication

Immediate Deferred

Understanding Networked Applications A First Course13

A hierarchy

• Data

• Information

• Knowledge

• Wisdom

Understanding Networked Applications A First Course14

Participants

User

Author or publisher

Indexer or organizer

Recommender

Librarian or teacher or interpreter

Understanding Networked Applications A First Course15

Push vs. pull

User

Publisher

Pull

Control over what is providedTime when it is provided

PushIntermediate cases:

NotificationSubscription

Understanding Networked Applications A First Course16

Some modalities of information accessPull

Push

Agent

Intermediary

Aggregate,filter,consolidate

Delegate

Search,navigate,browse

Subscribe

Understanding Networked Applications A First Course17

Taxonomy of organizational applications

Department

Enterprise

Economy

E-commerce:Inter-enterpriseConsumerInter-consumer

Understanding Networked Applications A First Course18

Hierarchical,functional organization

Suppliers

Customer

ActivityFlow of material,goods, and information

Understanding Networked Applications A First Course19

Book distributioncenters

books4u.comCustomers

Financial institution

Consumer Enterprise Inter-enterprise

Understanding Networked Applications A First Course20

Two flavors

• Supply chain management: extension of ongoing business processes to suppliers and customers– primarily business to business

• Marketplace: dynamic, opportunistic transactions conducted over the network– primarily business to consumer

Understanding Networked Applications A First Course21

Steps in an e-commerce sale

• Matching buyers and sellers

• Negotiating terms and conditions– price, delivery, warrantee, etc.

• Consummation– order, fulfillment, payment

• Post-sale customer service

Understanding Networked Applications A First Course22

Key concept

• The key commodity manipulated by information technology is information

• To be manipulated in a computing/networking environment, information must be represented by data

Understanding Networked Applications A First Course23

Representation needs to be standardized

Information

Data

Information

Data

Communicate data toanother user or organization

If the representationis not standardized, theinformation is garbled!

Understanding Networked Applications A First Course24

Decomposition

Decomposition

Functionality

Interaction

Understanding Networked Applications A First Course25

A system is decomposed into interacting subsystems

Each subsystem may have a similar internal decomposition

Architecture

Understanding Networked Applications A First Course26

Layering

Existing layers

Elaboration or specialization

Layering builds capability incrementally by adding to what exists

Understanding Networked Applications A First Course27

Communications Storage

Network equipment Storage peripherals

Network software File system

Distributed objectmanagement

Databasemanagement

Application

Middleware

Operatingsystem

Equipment

Simplified infrastructure layering

Understanding Networked Applications A First Course28

Applications

Integrative services

Generic services

Common representations

Processing Storage Connectivity

Application components

Understanding Networked Applications A First Course29

The basic idea

Diversity of applications

Diversity of processing, storage, andconnectivity technologies

Common services andrepresentationsand structures forinformation

Understanding Networked Applications A First Course30

Hosts

Switches

Backbonelinks

Access links

Network architecture

Understanding Networked Applications A First Course31

Presentation

Applicationlogic

Shareddata

Local-area network

Note: many clients perapplication server, severalapplication servers per data server

Three-tier client/server

Understanding Networked Applications A First Course32

Modularity

• A system is modular when it is divided into subsystems (called modules) with “good” properties– Modules embody distinct functional groupings– Hierarchy supports views at different

granularity and scale– Separation of concerns among modules– Reusability

Understanding Networked Applications A First Course33

Software:

Allows a system to be understood at different granularity

Hierarchy

Organization:Allows a managerto focus on high-levelobjectives, delegatinglow-level detail

Understanding Networked Applications A First Course34

Interfaces

• Focus of module interaction and interoperability

• Two purposes:– informs other modules how to interact– informs implementer as to what has been

promised to other modules

Understanding Networked Applications A First Course35

Module interaction through interfaces

Client Server

action, parameters

returns

Both subsystems areaffected by the interaction

Data customizing an actionand disclosing its results

Understanding Networked Applications A First Course36

Layer above is a client of thelayer below

Layer below as as a serverto the layer above

….by utilizing the services of the layer below and adding capability

Each layer provides services to the layer above….

Interaction of layers

Understanding Networked Applications A First Course37

Web browser

File system

Operatingsystem

File

Network

Message

Collection of packetsFragmentation Assembly

Message

HTML

Screen

Application

Web server

Example