learning objectives 1.identify the major categories and trends of distributed system 2.identify the...

42
Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e-commerce system, and give examples of how they are implemented in e-commerce applications. 3.Identify and give examples of several key factors and Web store requirements needed to succeed in e- commerce.

Upload: mae-henderson

Post on 20-Jan-2016

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

Learning Objectives

1. Identify the major categories and trends of distributed system

2. Identify the essential processes of an e-commerce system, and give examples of how they are implemented in e-commerce applications.

3. Identify and give examples of several key factors and Web store requirements needed to succeed in e-commerce.

Page 2: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

Learning Objectives

4. Identify and explain the business value of several types of e-commerce marketplaces.

5. Discuss the benefits and trade-offs of several e-commerce clicks and bricks alternatives.

Page 3: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

Chapter 1: Characterization of Distributed Systems

• Introduction

• Examples of distributed systems

• Resource sharing and the web

• Challenges

• Summary

Page 4: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

Ubiquitous networks

• Internet• Mobile phone networks• Corporation networks• Factory networks• Campus networks• Home networks

Page 5: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

Distributed System Definition

• A distributed system is one in which hardware or software components located at networked computers communicate and coordinate their actions only by passing messages.

Page 6: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

Characteristics of Distributed System

• Concurrency• concurrent programs execution – share

resource

• No global clock• programs coordinate actions by exchanging

messages

• Independent failures• when some systems fail, others may not know

Page 7: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

Share resources

• It characterizes the range of the things that can usefully be shared in a networked computer

• It extends from hardware components to software-defined entities.

• It includes the stream of video frames and the audio connection.

Page 8: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

Chapter 1: Characterization of Distributed Systems

• Introduction

• Examples of distributed systems

• Resource sharing and the web

• Challenges

• Summary

Page 9: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

Familiar and widely used computer networks

• The Internet

• Intranet

• Mobile computing

Page 10: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

• It is a very large distributed system that allows users throughout the world to make use of its services.

• Internet protocols is a major technical achievement.

Internet

Page 11: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

The Internet

intranet

ISP

desktop computer:

backbone

satellite link

server:

network link:

Page 12: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

• What is Intranet? – A portion of the Internet that is separately

administered and has a boundary that can be configured to enforce local security policies

– Composed of several LANs linked by backbone connections

– Be connected to the Internet via a router

Intranet

Page 13: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

A typical Intranet

the rest of

email server

Web server

Desktopcomputers

File server

router/firewall

print and other servers

other servers

print

Local areanetwork

email server

the Internet

Page 14: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

• File services• Firewall• The cost of software installation and

support

Three main issues in the design of components for the use in intranet

Page 15: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

• Mobile devices– Laptop computers– Handheld devices

• PDA, mobile phone, pager, video camera, digital camera

– Wearable devices• e.g. smart watches, digital glasses

– Network appliances• e.g. washing machines, hi-fi systems, cars and

refrigerators

Mobile and ubiquitous computing

Page 16: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

• Mobile computing (nomadic computing)– Access resources while on the move or in an

unusual environment– Location-aware computing: utilize resources

that are conveniently nearby

• Ubiquitous computing (pervasive computing)– The harnessing of many small, cheap

computational devices

Mobile and ubiquitous computing … continued

Page 17: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

Portable and handheld devices in a distributed system

Laptop

Mobile

PrinterCamera

Internet

Host intranet Home intranetWAP

Wireless LAN

phone

gateway

Host site

Page 18: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

• Discovery of resources• Eliminating the need for users to

reconfigure their mobile devices• To cope with limited connectivity as they

travel• Provide privacy and other security

guarantees

Issues in the design of components for the use in Mobile and ubiquitous computing

Page 19: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

Chapter 1: Characterization of Distributed Systems

• Introduction

• Examples of distributed systems

• Resource sharing and the web

• Challenges

• Summary

Page 20: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

• Is the primary motivation of distributed computing

• Resources types– Hardware, e.g. printer, scanner, camera– Data, e.g. file, database, web page– More specific functionality, e.g. search

engine, file

Resource sharing

Page 21: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

• Service– manage a collection of related resources and present their functionalities to

users and applications

• Server– a process on networked computer that accepts requests from processes on

other computers to perform a service and responds appropriately

• Client– the requesting process

• Remote invocation– A complete interaction between client and server, from the point when the

client sends its request to when it receives the server’s response

Some definitions

Page 22: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

Case study: the World Wide Web

• Motivation of WWW– Documents sharing between physicists of CERN

• Web is an open system: it can be extended and implemented in new ways without disturbing its existing functionality.– Its operation is based on communication standards

and document standards – Respect to the types of ‘resource’ that can be

published and shared on it.

Page 23: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

Three main components of the Web

• HyperText Markup Language– A language for specifying the contents and layout

of pages

• Uniform Resource Locators– Identify documents and other resources

• A client-server architecture with HTTP– By with browsers and other clients fetch

documents and other resources from web servers

Page 24: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

HTML

HTML text is stored in a file of a web server. A browser retrieves the contents of this file from a web

server.-The browser interprets the HTML text-The server can infer the content type from the filename

extension.

<IMG SRC = http://www.cdk3.net/WebExample/Images/earth.jpg><P>Welcome to Earth! Visitors may also be interested in taking a look at the <A HREF = “http://www.cdk3.net/WebExample/moon.html>Moon</A>.<P>(etcetera)

Page 25: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

URL

HTTP URLs are the most widely used An HTTP URL has two main jobs to do:

- To identify which web server maintains the resource- To identify which of the resources at that server

Scheme: scheme-specific-locatione.g:

mailto:[email protected]://ftp.downloadIt.com/software/aProg.exehttp://net.pku.cn/ ….

Page 26: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

Web servers and web browsers

Internet

BrowsersWeb servers

e.pku.cn

www.cdk3.net

www.w3c.org

Protocols

Activity.html

http://www.w3c.org/Protocols/Activity.html

http://e.pku.cn/cgi-bin/allsearch?word=distributed+system

http://www.cdk3.net/

File system ofwww.w3c.org

Page 27: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

HTTP URLs

• http://servername[:port]//pathNameOnServer][?arguments]• e.g.

http://www.cdk3.net/http://www.w3c.org/Protocols/Activity.htmlhttp://e.pku.cn/cgi-bin/allsearch?word=distributed+system

----------------------------------------------------------------------------------------------------

Server DNS name Pathname on server Argumentswww.cdk3.net (default) (none)www.w3c.org Protocols/Activity.html (none)e.pku.cn cgi-bin/allsearch word=distributed+system-------------------------------------------------------------------------------------------------------

• Publish a resource remains unwieldy

Page 28: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

HTTP

• Defines the ways in which browsers and any other types of client interact with web servers (RFC2616)

• Main features– Request-replay interaction– Content types. The strings that denote the type of

content are called MIME (RFC2045,2046)– One resource per request. HTTP version 1.0– Simple access control

Page 29: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

More features-services and dynamic pages

• Dynamic content– Common Gateway Interface: a program that

web servers run to generate content for their clients

• Downloaded code– JavaScript– Applet

Page 30: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

Discussion of Web

Dangling: a resource is deleted or moved, but links to it may still remain

Find information easily: e.g. Resource Description Framework which standardize the format of metadata about web resources

Exchange information easily: e.g. XML – a self describing language

Scalability: heavy load on popular web servers More applets or many images in pages increase in

the download time

Page 31: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

Chapter 1: Characterization of Distributed Systems

• Introduction

• Examples of distributed systems

• Resource sharing and the web

• Challenges

• Summary

Page 32: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

Heterogeneity

• Networks– Ethernet, token ring, etc

• Computer hardware– big endian / little endian

• Operating systems– different API of Unix and Windows

• Programming languages– different representations for data structures

• Implementations from different developers– no application standards

Page 33: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

• Middleware– applies to a software layer that provides a

programming abstraction as well as masking the heterogeneity of the underlying networks, hardware, OSs and programming languages

• Mobile code– is used to refer to code that can be sent from

one computer to another and run at the destination

Heterogeneity… continued

Page 34: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

Openness

• Openness of a computer system -- is the characteristic that determines whether the system

can be extended and re-implemented in various way. e.g. Unix

• Openness of distributed systems -- is determined by the degree to witch new resource sharing services can be added and be made available for use by A variety of client programs.

e.g. Web

• How to deal with openness?-- key interfaces are published, e.g. RFC

Page 35: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

Security

• Confidentiality– protection against disclosure to

unauthorized individuals, e.g. ACL in Unix File System

• Integrity– protection against alteration or corruption,

e.g. checksum• Availability

– protection against interference with the means to access the resources, e.g. Denial of service

Page 36: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

Scalability

• A system is described as scalable– if will remain effective when there is a significant increase

in the number of resources and the number of users

• A scalable example system: the Internet• design challenges

– The cost of physical resources, e.g., servers support users at most O(n)– The performance loss, e.g., DNS no worse than O(logn)– Prevent software resources running out, e.g., IP address– Avoid performance bottlenecks, e.g., partitioning name table of DNS,

cache and replication

Date Computers Web servers Percentage

1993, July 1,776,000 130 0.008

1995, July 6,642,000 23,500 0.41997, July 19,540,000 1,203,096 61999, July 56,218,000 6,598,697 12

Page 37: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

Failure handling

• Detecting– e.g. checksum for corrupted data– Sometimes impossible so suspect, e.g. a remote

crashed server in the Internet• Masking

– e.g. Retransmit message, standby server• Tolerating

– e.g. a web browser cannot contact a web server• Recovery

– e.g. Roll back• Redundancy

– e.g. IP route, replicated name table of DNS

Page 38: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

Concurrency

• Correctness– ensure the operations on shared resource

correct in a concurrent environmente.g. records bids for an auction

• Performance– Ensure the high performance of concurrent

operations

Page 39: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

Transparency

• Access transparency– using identical operations to access local and remote

resources, e.g. a graphical user interface with folders

• Location transparency– resources to be accessed without knowledge of their

location, e.g. URL

• Concurrency transparency– several processed operate concurrently using shared

resources without interference with between them

• Replication transparency– multiple instances of resources to be used to increase

reliability and performance without knowledge of the replicas by users or application programmers, e.g. realcourse(http://vod.yf.pku.edu.cn/)

Page 40: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

Transparency … continued

• Failure transparency– users and applications to complete their tasks despite the

failure of hardware and software components, e.g., email

• Mobility transparency– movement of resources and clients within a system

without affecting the operation of users and programs, e.g., mobile phone

• Performance transparency– allows the system to be reconfigured to improve

performance as loads vary

• Scaling transparency– allows the system and applications to expand in scale

without change to the system structure or the application algorithms

Page 41: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

Chapter 1: Characterization of Distributed Systems

• Introduction

• Examples of distributed systems

• Resource sharing and the web

• Challenges

• Summary

Page 42: Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give

Summary

• Distributed systems are pervasive • Resource sharing is the primary motivation for

constructing distributed systems• Characterization of Distributed System

– Concurrency– No global clock– Independent failures

• Challenges to construct distributed system– Heterogeneity– Openness– Security– Scalability– Failure handling– Concurrency– Transparency