Distributed computing 01/21/23 1
28 Slides340.00 KB
Distributed computing 01/21/23 1
Distributed system, distributed computing Early computing was performed on a single processor. Uni-processor computing can be called centralized computing. A distributed system is a collection of independent computers, interconnected via a network, capable of collaborating on a task. Distributed computing is computing performed in a distributed system. 01/21/23 2
Distributed Systems w ork s t a t io n s a lo c a l n e t w o r k T h e In te rn e t a n e tw o rk h o s t 01/21/23 3
Examples of Distributed systems Network of workstations (NOW): a group of networked personal workstations connected to one or more server machines. The Internet An intranet: a network of computers and workstations within an organization, segregated from the Internet via a protective device (a firewall). 01/21/23 4
Example of a large-scale distributed system – eBay (Source: Los Angeles Times.) 01/21/23 5
An example small-scale distributed system (Source: Los Angeles Times.) 01/21/23 6
Computers in a Distributed System Workstations: computers used by end-users to perform computing Server machines: computers which provide resources and services Personal Assistance Devices: handheld computers connected to the system via a wireless communication link. 01/21/23 7
The power of the Internet (Source: the Usability Professional Association’s site.) 60 million American households use computers.(The New York Times, 5/28/98) The number of computer users in the workplace has increased from 600,000 in 1976 to 80 million today. (San Francisco Examiner, 3/29/98) 84% of Internet users say that the Web is indispensable. Nearly the same percentage find e-mail indispensable. 85% use the Internet every day. (GVU, 1997) 01/21/23 8
The Power of the Internet – 2 (Source: www.cisco.com) BACKBONE CAPACITY: The capacity of the Internet backbone to carry information is doubling every 100 days. ( U.S. Internet Council, Apr. 1999). DATA TRAFFIC SURPASSING VOICE: Voice traffic is growing at 10% per year or less, while data traffic is conservatively estimated to be growing at 125% per year, meaning voice will be less than 1% of the total traffic by 2007. (Technology Futures, Inc March 2000). DOMAIN NAMES: There are 12,844,877 unique domain names (e.g. Cisco.com) registered worldwide, with 428,023 new domain names registered each week. (NetNames Statistics 12/28/1999). 01/21/23 9
The Power of the Internet – 3 (Source: www.cisco.com) DOMAIN NAMES: There are 12,844,877 unique domain names (e.g. Cisco.com) registered worldwide, with 428,023 new domain names registered each week. (NetNames Statistics 12/28/1999). HOST COMPUTERS: In July 1999 there were 56.2 million "host" computers supporting web pages. In July 1997 there were 19.5 million host computers, with 3.2 million hosts in July 1994, and a mere 80,000 in July 1989. ( Internet Software Consortium – Internet Domain Survey). TOTAL AMOUNT OF DATA: 1,570,000,000 pages, 29,400,000,000,000 bytes of text, 353,000,000 images, and 5,880,000,000,000 bytes of image data. (The Censorware Project, Jan. 26, 1999). 01/21/23 10
The Power of the Internet – 4 (Source: www.cisco.com) EMAIL VOLUME: Average U.S. consumer will receive 1,600 commercial email messages in 2005, up from 40 in 1999, while non-marketing and personal correspondence will more than double from approximately 1,750 emails per year in 1999 to almost 4,000 in 2005 (Jupiter Communications, May 2000). 159 million computers in the U.S., 135 million in EU, and 116 million in Asia Pacific (as of April 2000). WEB HITS/DAY: U.S. web pages averaged one billion hits per day (aggregate) in October 1999. (eMarketer/Media Metrix, Nov. 1999). 01/21/23 11
NUMBER OF AMERICANS ONLINE – HISTORICAL (Source: www.cisco.com) 1993 – 90,000 (U.S. Internet Council, Apr. 1999). 1997 – 19 million (Stratis Group, Apr. 1999). 1998 – 68 million in 1998. (Strategis Group, Nov. 1999). 1998 – 84 million from home or work (Stratis Group, Apr. 1999). 1998 – 37 million DAILY (Stratis Group, Apr. 1999). 1999, Nov. – 118.4 million (Cyberatlas/Nielsen Net Ratings, Dec. 1999). 1999, Nov. – 74 million actually went online (Cyberatlas/Nielsen Net Ratings, Dec. 1999). 01/21/23 12
PERCENTAGE OF AMERICANS ONLINE (Source: www.cisco.com) 1998 – 28% (IDC, Oct. 1999). 1998 – 42% of the U.S. adult population. ( Stratis Group, Apr. 1999) 2003 – 62% (IDC, Oct. 1999). 2003 – 67% (Yankee Group, 1999). 2005 – 91% (Strategy Analytics, Dec. 1999). 01/21/23 13
The Power of the Internet – 5 (Source: www.cisco.com) NEW USERS Q1 2000: More than 5 million Americans joined the online world in the first quarter of 2000, which averages to roughly 55,000 new users each day, 2,289 new users each hour, or 38 new users each minute. (CyberAtlas / Telecommunications Reports International, May 2000). US INTERNET USAGE: Average US Internet user went online 18 sessions, spent a total of 9 hours, 5 minutes and 24 seconds online and visited 10 unique sites per month. (Nielsen NetRatings, June 2000). 01/21/23 14
The Power of the Internet – 6 (Source: www.cisco.com) E-MAIL 1998: The U.S. Postal Service delivered 101 billion pieces of paper mail in 1998. Estimates for e-mail messages sent in 1998 range from 618 billion to 4 trillion. (U.S. Internet Council, Apr. 1999). E-MAIL 1999: There are 270 million e-mailboxes in the U.S. -- roughly 2.5 per user. (eMarketer/ Messaging Online, Nov. 1999). HOURS ONLINE (Veronis, Suhler & Associates, Nov. 1999): 1997 – 28 hours per capita 1998 – 74 hours per capita 2003 – 192 hours per capita 01/21/23 15
ONLINE WORLDWIDE (Source: www.cisco.com) 1998 – 95.43 million people. (eMarketer eStats 1999). 1998, Dec. – 144 million (IDC, Dec. 1999). 1999, Dec. – 240 million (IDC, Dec. 1999). 2002 – over 490 million (Computer Industry Almanac, Nov. 1999). 2005 – over 765 million (Computer Industry Almanac, Nov. 1999 U.S. -- 136 million (36% of world’s total) (eMarketer, May 2000) – followed by Japan (27 M), UK (18M), and China (16 M). 01/21/23 16
Wireless access to the Internet (Source: www.cisco.com) U.S. WIRELESS USERS: 61.5 million Americans will be using wireless devices to access the Internet in 2003, up from 7.4 million in the US today (728% increase). (IDC Research, Feb. 2000). MOBILE DATA: Almost 80% of the US Internet population will access data from mobile phones in a year’s time, up from the current figure of 3%. (Corechange, Inc & Cap Gemini USA, Apr. 2000). 01/21/23 17
“The network really is the computer.” Tim O’Reilly, in an address at 6/2000 Java One: “By now, it's a truism that the Internet runs on open source. Bind, the Berkeley Internet Name Daemon, is the single most mission critical program on the Internet, followed closely by Sendmail and Apache, open source servers for two of the Internet's most widely used application protocols, SMTP (Simple Mail Transfer Protocol ) and HTTP (HyperText Transfer Protocol ).” Early “killer apps”: - usenet: distributed bulletin board - email - talk Recent “killer apps”: - the web - Peer-to-Peer (e.g., Napster, Gnutella, KaZaA) - collaborative computing (e.g., Java Shared Data Toolkit) 01/21/23 18
Centralized vs. Distributed Computing t e r m in a l m a in f r a m e c o m p u t e r w o r k s t a t io n n e t w o r k lin k n e tw o rk h o s t c e n t r a liz e d c o m p u t in g d is t r ib u t e d c o m p u tin g 01/21/23 19
Monolithic mainframe applications vs. distributed applications based on http://www.inprise.com/visibroker/papers/distributed/wp.html The monolithic mainframe application architecture: Separate, single-function applications, such as order-entry or billing Applications cannot share data or other resources Developers must create multiple instances of the same functionality (service). Proprietary (user) interfaces The distributed application architecture: Integrated applications Applications can share resources A single instance of functionality (service) can be reused. Common user interfaces 01/21/23 20
Evolution of paradigms Client-server: Socket API, RMI (remote method invocation) Distributed objects Object broker: CORBA Network service: Jini Object space: JavaSpaces Mobile agents Message oriented middleware (MOM): Java Message Service Collaborative applications 01/21/23 21
Cooperative distributed computing projects Cooperative distributed computing projects (also called distributed computing in some literature): these are projects that parcel out large-scale computing to workstations, often making use of surplus CPU cycles. Example: seti@home: project to scan data retrieved by a radio telescope to search for radio signals from another world. 01/21/23 22
Why distributed computing? Economics: distributed systems allow the pooling of resources, including CPU cycles, data storage, input/output devices, and services. Reliability: a distributed system allow replication of resources and/or services, thus reducing service outage due to failures. The Internet has become a universal platform for distributed computing. 01/21/23 23
The Weaknesses and Strengths of Distributed Computing In any form of computing, there is always a tradeoff in advantages and disadvantages Some of the reasons for the popularity of distributed computing : The affordability of computers and availability of network access Resource sharing Scalability Fault Tolerance 01/21/23 24
The Weaknesses and Strengths of Distributed Computing The disadvantages of distributed computing: Multiple Points of Failures: the failure of one or more participating computers, or one or more network links, can spell trouble. Security Concerns: In a distributed system, there are more opportunities for unauthorized attack. 01/21/23 25
Summary - 1 We discussed the following topics: What is meant by distributed computing Distributed system Distributed computing vs. parallel computing Basic concepts in operating system: processes and threads 01/21/23 26
Summary - 2 Basic concepts in data communication: Network architectures: the OSI model and the Internet model Connection-oriented communication vs. connectionless communication Naming schemes for network resources The Domain Name System (DNS) Protocol port numbers Uniform Resource Identifier (URI) Email addresses 01/21/23 27
Summary-3 Basic concepts in software engineering: Procedural programming vs. object-oriented programming UML Class diagrams The three-layered architecture of distributed applications: presentation layer, application or business logic, the service layer The terms toolkit, framework, and component 01/21/23 28