Welcome Aboardhome.eng.iastate.edu/~guan/course/CprE-450-550/Slides...CprE 450/550 Distributed...

21
CprE 450/550 Distributed Systems and Middleware Instructor: Yong Guan Durham 309 Tel: (515) 294-8378 Email: [email protected] Welcome Aboard !

Transcript of Welcome Aboardhome.eng.iastate.edu/~guan/course/CprE-450-550/Slides...CprE 450/550 Distributed...

Page 1: Welcome Aboardhome.eng.iastate.edu/~guan/course/CprE-450-550/Slides...CprE 450/550 Distributed Systems and Middleware Instructor: Yong Guan Durham 309 Tel: (515) 294-8378 Email: yguan@iastate.edu

CprE 450/550Distributed Systems and

Middleware

Instructor: Yong GuanDurham 309

Tel: (515) 294-8378Email: [email protected]

Welcome Aboard !

Page 2: Welcome Aboardhome.eng.iastate.edu/~guan/course/CprE-450-550/Slides...CprE 450/550 Distributed Systems and Middleware Instructor: Yong Guan Durham 309 Tel: (515) 294-8378 Email: yguan@iastate.edu

The insider’s view of a Centralized OS

• The insider’s view of a centralized OS.• (Roughly patterned after XINU [Comer 1984])

hardware

process coordinatorprocess managermemory manager

real-time clock managerdevice manager and device driversfile systemuser programs

1

2

3

1

2

3

remote files

+ remote device access

+ remote process management

Page 3: Welcome Aboardhome.eng.iastate.edu/~guan/course/CprE-450-550/Slides...CprE 450/550 Distributed Systems and Middleware Instructor: Yong Guan Durham 309 Tel: (515) 294-8378 Email: yguan@iastate.edu

Natural Extensions

• Two Trends– System Virtualization

• Allow multiple instances of (possibly different) OSes on a single machine

– Distributed OS• Large scale networked systems/machines

• Emerging Distributed Apps– Cloud Computing– P2P file sharing– Data outsourcing: Google Docs, Data centers, Yahoo Photo

Album, etc.– IPTV/VoIP– Web2.0 & WebOS, Wikipedia– Social websites: Myspace, Facebook, LinkedIn,.

Page 4: Welcome Aboardhome.eng.iastate.edu/~guan/course/CprE-450-550/Slides...CprE 450/550 Distributed Systems and Middleware Instructor: Yong Guan Durham 309 Tel: (515) 294-8378 Email: yguan@iastate.edu

Virtualization

• Idea: – Decouple [OS, service] pair from hardware– Multiplex lightly-used services on common host hardware– Migrate services from host to host as needed– Introduce new [OS, service] pairs as needed– Examples: VMWare, Xen, Parallel, etc.

Before Virtualization

After Virtualization

Page 5: Welcome Aboardhome.eng.iastate.edu/~guan/course/CprE-450-550/Slides...CprE 450/550 Distributed Systems and Middleware Instructor: Yong Guan Durham 309 Tel: (515) 294-8378 Email: yguan@iastate.edu

Multicast• The key application was streaming audio/video

– Webinar– Stock Information– On-line TV/Video– Group-based Apps (game, …)

Page 6: Welcome Aboardhome.eng.iastate.edu/~guan/course/CprE-450-550/Slides...CprE 450/550 Distributed Systems and Middleware Instructor: Yong Guan Durham 309 Tel: (515) 294-8378 Email: yguan@iastate.edu

Web 2.0: Wikipedia• Wikipedia is a multilingual, Web-based, free content

encyclopedia project. It is written collaboratively by volunteers, allowing most of its articles to be edited by almost anyone with access to the Web site.

• The largest collaborative authoring (group editing) project in the world

Page 7: Welcome Aboardhome.eng.iastate.edu/~guan/course/CprE-450-550/Slides...CprE 450/550 Distributed Systems and Middleware Instructor: Yong Guan Durham 309 Tel: (515) 294-8378 Email: yguan@iastate.edu

Google Office• Google Docs & Spreadsheets mimic functions of Microsoft

Office tools on the Web– Free storage, linked with Gmail– Work and collaborate as long as you have access to a

Web browser• Uniform look and feel on all OS platforms• Ajax and other software techniques make it as

responsive as local applications – network latencies are hidden

• The future of computing?– Web browser + open source, or Google + Linux?– No need to buy computers and software

• Who will pay for Windows and Office in the future?

Page 8: Welcome Aboardhome.eng.iastate.edu/~guan/course/CprE-450-550/Slides...CprE 450/550 Distributed Systems and Middleware Instructor: Yong Guan Durham 309 Tel: (515) 294-8378 Email: yguan@iastate.edu

Peer-to-Peer Systems• A killer application: Naptser

– Free music over the Internet• Key idea: share the content, storage and

bandwidth of individual (home) users• Exemplar P2Ps: Naptser, Gnutella,

Freenet, CAN, Chord, BitTorrent

Internet

Page 9: Welcome Aboardhome.eng.iastate.edu/~guan/course/CprE-450-550/Slides...CprE 450/550 Distributed Systems and Middleware Instructor: Yong Guan Durham 309 Tel: (515) 294-8378 Email: yguan@iastate.edu

Hadoop

http://hadoop.apache.org/

Page 10: Welcome Aboardhome.eng.iastate.edu/~guan/course/CprE-450-550/Slides...CprE 450/550 Distributed Systems and Middleware Instructor: Yong Guan Durham 309 Tel: (515) 294-8378 Email: yguan@iastate.edu

Emerging Internet Apps• IPTV• VoIP: Skype, Vonage, AT&T, etc• Video-on-Demand• Cloud-based services

Page 11: Welcome Aboardhome.eng.iastate.edu/~guan/course/CprE-450-550/Slides...CprE 450/550 Distributed Systems and Middleware Instructor: Yong Guan Durham 309 Tel: (515) 294-8378 Email: yguan@iastate.edu

Electronic Health Care Systems

• Monitoring a person in a pervasive electronic health care system, using (a) a local hub or (b) a continuous wireless connection

Page 12: Welcome Aboardhome.eng.iastate.edu/~guan/course/CprE-450-550/Slides...CprE 450/550 Distributed Systems and Middleware Instructor: Yong Guan Durham 309 Tel: (515) 294-8378 Email: yguan@iastate.edu

Blockchain

• http://bitcoin.org/en/• Ethereum• Stella

Page 13: Welcome Aboardhome.eng.iastate.edu/~guan/course/CprE-450-550/Slides...CprE 450/550 Distributed Systems and Middleware Instructor: Yong Guan Durham 309 Tel: (515) 294-8378 Email: yguan@iastate.edu

Course Objectives

This CprE 450/550 will

give the students both the fundamental knowledge in distributed computing systems and hands-on practice through middleware-based programming projects.

prepare the students for active research at the forefront of the areas of distributed computing systems, such as P2P, VoIP, Security, etc.

Page 14: Welcome Aboardhome.eng.iastate.edu/~guan/course/CprE-450-550/Slides...CprE 450/550 Distributed Systems and Middleware Instructor: Yong Guan Durham 309 Tel: (515) 294-8378 Email: yguan@iastate.edu

Course DescriptionFundamentals of distributed computing– Naming Services– Synchronization and Consistency– Distributed File Systems – Distributed Object-based Systems– System Virtulization– Security– Mobility Support– Blockchain– Emerging Apps: P2P, VoIP, …– New Architecture Design for the future Internet

Middleware– CORBA – RPC– Blockchain-based Middleware

Middleware-based Application Design and Development

Page 15: Welcome Aboardhome.eng.iastate.edu/~guan/course/CprE-450-550/Slides...CprE 450/550 Distributed Systems and Middleware Instructor: Yong Guan Durham 309 Tel: (515) 294-8378 Email: yguan@iastate.edu

Course Prerequisite

• Familiarity with– Basic concepts of O.S and computer

networking

• Some necessary background information will be discussed in class. Suggestions?

Page 16: Welcome Aboardhome.eng.iastate.edu/~guan/course/CprE-450-550/Slides...CprE 450/550 Distributed Systems and Middleware Instructor: Yong Guan Durham 309 Tel: (515) 294-8378 Email: yguan@iastate.edu

Course Materials• Required Textbook:

– Distributed Systems: Principles and Paradigms

• Reference Books:– Distributed Systems: Concepts and Design– Security Engineering: A Guide to Building

Dependable Distributed Systems

• Selected papers on each topic will be provided.

Reading list will be given on Canvas.

Page 17: Welcome Aboardhome.eng.iastate.edu/~guan/course/CprE-450-550/Slides...CprE 450/550 Distributed Systems and Middleware Instructor: Yong Guan Durham 309 Tel: (515) 294-8378 Email: yguan@iastate.edu

Course Outline and Schedule• Meet in the classroom

– In-class lecture schedule posted on Canvas– http://www.engineering.iastate.edu/~guan/course/CprE-450-

550/Slides1712/index.html

• Office hours held weekly on Tuesday, 11-noon, both face-to-face and online via Zoom.

• In-class midterm exam and take-home final exam

• Final term paper presentation in the final exam week

Page 18: Welcome Aboardhome.eng.iastate.edu/~guan/course/CprE-450-550/Slides...CprE 450/550 Distributed Systems and Middleware Instructor: Yong Guan Durham 309 Tel: (515) 294-8378 Email: yguan@iastate.edu

Course AssignmentsThree programming projects, two of which are small, and the 3rd is a larger one

One term paper– Undergraduate: 6-pages literature survey on a specific topic based

on the reading of at least 10 papers published within the past five years.

– Graduate: 8-pages term paper, including defining a specific problem, surveying existing work, developing a (better) solution, and evaluating your results

Two exams (in-class mid-term and take-home final exams)

Online quizzes

A small number of homework (no need to submit), demonstration, and presentations

Page 19: Welcome Aboardhome.eng.iastate.edu/~guan/course/CprE-450-550/Slides...CprE 450/550 Distributed Systems and Middleware Instructor: Yong Guan Durham 309 Tel: (515) 294-8378 Email: yguan@iastate.edu

Grading CriteriaTotal point is 100

Mid-term & Final Exam: 30Course Projects: 40Term papers: 20 – Vision– Related work– Critiques: identify holes/questions and potential

improvements of existing work– Depth and breadth of knowledge to the materials

Quizzes and term paper presentation: 10

Attendance for those in-class lectures is expected and encouraged. Bonus 3 points.

Page 20: Welcome Aboardhome.eng.iastate.edu/~guan/course/CprE-450-550/Slides...CprE 450/550 Distributed Systems and Middleware Instructor: Yong Guan Durham 309 Tel: (515) 294-8378 Email: yguan@iastate.edu

Course Rules• Attending in-class lectures is encouraged,

unless you have reasonable reasons.

• Due dates for term papers and course projects are firm.

• However, for the whole semester, you can have at most one time no-reason three-day extension.

Page 21: Welcome Aboardhome.eng.iastate.edu/~guan/course/CprE-450-550/Slides...CprE 450/550 Distributed Systems and Middleware Instructor: Yong Guan Durham 309 Tel: (515) 294-8378 Email: yguan@iastate.edu

Any Questions?