![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](https://reader036.vdocument.in/reader036/viewer/2022081402/5f1e17a44b514542542198e2/html5/thumbnails/1.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022081402/5f1e17a44b514542542198e2/html5/thumbnails/2.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022081402/5f1e17a44b514542542198e2/html5/thumbnails/3.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022081402/5f1e17a44b514542542198e2/html5/thumbnails/4.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022081402/5f1e17a44b514542542198e2/html5/thumbnails/5.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022081402/5f1e17a44b514542542198e2/html5/thumbnails/6.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022081402/5f1e17a44b514542542198e2/html5/thumbnails/7.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022081402/5f1e17a44b514542542198e2/html5/thumbnails/8.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022081402/5f1e17a44b514542542198e2/html5/thumbnails/9.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022081402/5f1e17a44b514542542198e2/html5/thumbnails/10.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022081402/5f1e17a44b514542542198e2/html5/thumbnails/11.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022081402/5f1e17a44b514542542198e2/html5/thumbnails/12.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022081402/5f1e17a44b514542542198e2/html5/thumbnails/13.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022081402/5f1e17a44b514542542198e2/html5/thumbnails/14.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022081402/5f1e17a44b514542542198e2/html5/thumbnails/15.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022081402/5f1e17a44b514542542198e2/html5/thumbnails/16.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022081402/5f1e17a44b514542542198e2/html5/thumbnails/17.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022081402/5f1e17a44b514542542198e2/html5/thumbnails/18.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022081402/5f1e17a44b514542542198e2/html5/thumbnails/19.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022081402/5f1e17a44b514542542198e2/html5/thumbnails/20.jpg)
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](https://reader036.vdocument.in/reader036/viewer/2022081402/5f1e17a44b514542542198e2/html5/thumbnails/21.jpg)
Any Questions?