CS 425 / ECE 428 Distributed Systems Fall 2014 Indranil Gupta (Indy) August 26 – December 9, 2014 Lecture 1-29 Web: courses.engr.illinois.edu/cs425/ All.

Slides:



Advertisements
Similar presentations
Distributed Systems Major Design Issues Presented by: Christopher Hector CS8320 – Advanced Operating Systems Spring 2007 – Section 2.6 Presentation Dr.
Advertisements

1 Indranil Gupta (Indy) Lecture 8 Paxos February 12, 2015 CS 525 Advanced Distributed Systems Spring 2015 All Slides © IG 1.
CS 425 / ECE 428 Distributed Systems Fall 2014 Indranil Gupta (Indy) Lecture 1: Welcome, and Introduction Web: courses.engr.illinois.edu/cs425/ All slides.
CS542: Topics in Distributed Systems
CMPT 401 Summer 2007 Dr. Alexandra Fedorova Distributed Systems.
CS 6464: Advanced Distributed Storage Systems Spring 2009 Instructor: Hakim Weatherspoon.
CMPT Dr. Alexandra Fedorova Distributed Systems.
Based on last years lecture notes, used by Juha Takkinen.
Computer Science Lecture 2, page 1 CS677: Distributed OS Last Class: Introduction Distributed Systems – A collection of independent computers that appears.
ECE 569 Database System EngineeringSpring 2003 ECE 569 Database System Engineering Spring 2003 Yanyong Zhang
CSE 486/586, Spring 2012 CSE 486/586 Distributed Systems Introduction Steve Ko Computer Sciences and Engineering University at Buffalo.
Lecture 1-1 CS542: Topics in Distributed Systems Diganta Goswami.
CS 425 / ECE 428 Distributed Systems Fall 2014 Indranil Gupta (Indy) Lecture 19: Paxos All slides © IG.
CS 425 / ECE 428 Distributed Systems Fall 2014 Indranil Gupta (Indy) Lecture 18: Replication Control All slides © IG.
Distributed Systems Lecture 1: Overview CS425/CSE424/ECE428 Fall 2011 Nikita Borisov.
Introduction. Readings r Van Steen and Tanenbaum: 5.1 r Coulouris: 10.3.
Lecture 1-1 Computer Science 425 Distributed Systems CS 425 / CSE 424 / ECE 428 Klara Nahrstedt August 25, 2009.
CSE 486/586 CSE 486/586 Distributed Systems Introduction Steve Ko Computer Sciences and Engineering University at Buffalo.
CSSE 492 Advanced Computer Networks Dr. Yingwu Zhu Spring 2008.
CS 3305 Course Overview. Introduction r Instructor: Dr Hanan Lutfiyya r Office: MC 355 r hanan at csd dot uwo ca r Office Hours: m Drop-by m Appointment.
CS492: Special Topics on Distributed Algorithms and Systems Fall 2008 Lab 3: Final Term Project.
CSE 486/586, Spring 2013 CSE 486/586 Distributed Systems Introduction Steve Ko Computer Sciences and Engineering University at Buffalo.
CSE 486/586, Spring 2013 CSE 486/586 Distributed Systems Mid-Semester Overview Steve Ko Computer Sciences and Engineering University at Buffalo.
Computer Networks CEN 5501C Spring, 2008 Ye Xia (Pronounced as “Yeh Siah”)
Web: courses.engr.illinois.edu/cs425/
Lecture 1 Page 1 CS 239, Fall 2010 Introduction CS 239 Advanced Topics in Computer Security Peter Reiher September 23, 2010.
Distributed systems [Fall 2014] G Lec 1: Course Introduction.
Ahmad Al-Shishtawy 1,2,Tareq Jamal Khan 1, and Vladimir Vlassov KTH Royal Institute of Technology, Stockholm, Sweden {ahmadas, tareqjk,
Syllabus. Instructor Dr. Hanan Lutfiyya Middlesex College 418 Ext Office Hours: Tuesday from 12:05-1:05 and Thursday from 11:05-1:05.
1 HEINZ NIXDORF INSTITUT University of Paderborn Algorithms und Complexity Seminar Designing Peer-to-Peer- Networks Christian Schindelhauer
Introduction. Readings r Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 3 m Note: All figures from this book.
CSE 486/586, Spring 2013 CSE 486/586 Distributed Systems Wrap-up Steve Ko Computer Sciences and Engineering University at Buffalo.
Kyung Hee University 1/41 Introduction Chapter 1.
Lecture 28-1 Computer Science 425 Distributed Systems Lecture 28 “Wrap-Up” Klara Nahrstedt.
Lecture 1-1 Computer Science 425 Distributed Systems CS 425 / CSE 424 / ECE 428 Fall 2012 Indranil Gupta (Indy) August 28, 2012 Lecture 1  2012, I. Gupta,
Summary and Review. Course Objectives The main objectives of the course are to –introduce different concepts in operating system theory and implementation;
CSE 486/586, Spring 2012 CSE 486/586 Distributed Systems Wrap-up Steve Ko Computer Sciences and Engineering University at Buffalo.
Lecture 11-1 Computer Science 425 Distributed Systems CS 425 / CSE 424 / ECE 428 Fall 2010 Indranil Gupta (Indy) September 28, 2010 Lecture 11 Leader Election.
Unit 9: Distributing Computing & Networking Kaplan University 1.
Distributed systems [Fall 2015] G Lec 1: Course Introduction.
Peer to Peer Network Design Discovery and Routing algorithms
CS 425 / ECE 428 Distributed Systems Fall 2015 Indranil Gupta (Indy) August 25 – December 8, 2015 Lecture 1-29 Web: courses.engr.illinois.edu/cs425/ All.
CS614: Advanced Course in Computer Systems (Spring’04) Instructor: Ken Birman TA: non assigned (yet)
CSE 486/586, Spring 2014 CSE 486/586 Distributed Systems Introduction Steve Ko Computer Sciences and Engineering University at Buffalo.
Lecture 29-1 Computer Science 425 Distributed Systems CS 425 / CSE 424 / ECE 428 Fall 2012 Indranil Gupta (Indy) August 27-December 11, 2012 Lecture 1-29.
CS426: Building Decentralized Systems Mahesh Balakrishnan.
CS 425/ECE 428 Distributed Systems Nitin Vaidya. T.A.s – Persia Aziz – Frederick Douglas – Su Du – Yixiao Lin.
Distributed Systems and Security: An Introduction Brad Karp and Steve Hailes UCL Computer Science CS Z03 / nd October, 2006.
Computer Networks CNT5106C
CS 425 / ECE 428 Distributed Systems Fall 2015 Indranil Gupta (Indy) Peer-to-peer Systems All slides © IG.
Lecture 1 Book: Hadoop in Action by Chuck Lam Online course – “Cloud Computing Concepts” lecture notes by Indranil Gupta.
CSE 486/586 Distributed Systems Wrap-up
CS/CE/TE 6378 Advanced Operating Systems
Distributed Operating Systems Spring 2004
CSE 486/586 Distributed Systems Mid-Semester Overview
Distributed Operating Systems
CSE 486/586 Distributed Systems Wrap-up
FINAL EXAM INFORMATION
Advanced Operating Systems
湖南大学-信息科学与工程学院-计算机与科学系
CS 525 Advanced Distributed Systems Spring 2018
CSCD 330 Network Programming Spring
CSC 724 Advanced Distributed Systems Introduction
Web: courses.engr.illinois.edu/cs425/
CSCD 330 Network Programming Spring
Lecture 21: Replication Control
Web: courses.engr.illinois.edu/cs425/
CSCD 330 Network Programming Spring
Lecture 21: Replication Control
CSE 486/586 Distributed Systems Mid-Semester Overview
Presentation transcript:

CS 425 / ECE 428 Distributed Systems Fall 2014 Indranil Gupta (Indy) August 26 – December 9, 2014 Lecture 1-29 Web: courses.engr.illinois.edu/cs425/ All slides © IG

Our First Goal in this Course was… To Define the Term Distributed System (First lecture slide)

Client-Server (NFS) The Web The Internet A wireless network DNS Gnutella or BitTorrent (peer to peer overlays) A “cloud”, e.g., Amazon EC2/S3, Microsoft Azure A datacenter, e.g., NCSA, a Google datacenter, The Planet Can you name some examples of Distributed Systems? (First lecture slide)

What is a Distributed System? (First lecture slide)

FOLDOC definition A collection of (probably heterogeneous) automata whose distribution is transparent to the user so that the system appears as one local machine. This is in contrast to a network, where the user is aware that there are several machines, and their location, storage replication, load balancing and functionality is not transparent. Distributed systems usually use some kind of client-server organization. (First lecture slide)

Textbook definitions A distributed system is a collection of independent computers that appear to the users of the system as a single computer. [Andrew Tanenbaum] A distributed system is several computers doing something together. Thus, a distributed system has three primary characteristics: multiple computers, interconnections, and shared state. [Michael Schroeder] (First lecture slide)

A working definition for us A distributed system is a collection of entities, each of which is autonomous, programmable, asynchronous and failure- prone, and which communicate through an unreliable communication medium. Entity=a process on a device (PC, PDA) Communication Medium=Wired or wireless network Our interest in distributed systems involves –design and implementation, maintenance, algorithmics What Evidence/Examples have we seen? (First lecture slide)

Problems we have seen since then Failure Detectors Time and Synchronization Global States and Snapshots Multicast Communications Mutual Exclusion Leader Election Impossibility of Consensus Gossiping Peer to peer systems – Napster, Gnutella Chord Cloud Computing Networking and Routing Sensor Networks Measurements from real systems Datacenter Disaster Case Studies

Problems we have seen since then Failure Detectors Time and Synchronization Global States and Snapshots Multicast Communications Mutual Exclusion Leader Election Impossibility of Consensus Gossiping Peer to peer systems – Napster, Gnutella Chord Cloud Computing Networking and Routing Sensor Networks Measurements from real systems Datacenter Disaster Case Studies Basic Theoretical Concepts Cloud Computing What Lies Beneath

RPCs & Distributed Objects Concurrency Control 2PC and Paxos Replication Control Key-value and NoSQL stores Stream Processing Graph processing Self-stabilization Distributed File Systems Distributed Shared Memory Security Problems we have seen since then (2) Basic Building Blocks Distributed Services (e.g., storage) Cloud Computing Old but Important Important

Midterm HW’s and MP’s –You’ve built a new (emulated) cloud computing system from scratch! Problems we have seen since then (3) How to get good grades (and regrades, and jobs in some cases) Take it and build a real deployed key-value store!

Rejoinder: Typical Distributed Systems Design Goals Common Goals: –Heterogeneity –Robustness –Availability –Transparency –Concurrency –Efficiency –Scalability –Security –Openness –(Also: consistency, CAP, partition-tolerance, ACID, BASE, and others … ) (First lecture slide) Do they make sense now?

Rejoinder: Typical Distributed Systems Design Goals Common Goals: –Heterogeneity – can the system handle a large variety of types of PCs and devices? –Robustness – is the system resilient to host crashes and failures, and to the network dropping messages? –Availability – are data+services always there for clients? –Transparency – can the system hide its internal workings from the users? –Concurrency – can the server handle multiple clients simultaneously? –Efficiency – is the service fast enough? Does it utilize 100% of all resources? –Scalability – can it handle 100 million nodes without degrading service? (nodes=clients and/or servers) How about 6 B? More? –Security – can the system withstand hacker attacks? –Openness – is the system extensible? –(Also: consistency, CAP, partition-tolerance, ACID, BASE, and others … ) (First lecture slide)

Problems we have seen in Class (and their relation to other courses) Failure Detectors Time and Synchronization Global States and Snapshots Multicast Communications Mutual Exclusion Leader Election Impossibility of Consensus Gossiping Peer to peer systems – Napster, Gnutella Chord Cloud Computing Sensor Networks Measurements from real systems Datacenter Disaster Case Studies Networking and Routing Core Material of this course Related to CS 525 (Advanced Distributed Systems Offered Spring 2015) Related to CS 438/439/538

RPCs & Distributed Objects Concurrency Control 2PC and Paxos Replication Control Key-value and NoSQL stores Stream Processing Graph processing Self-stabilization Distributed File Systems Distributed Shared Memory Security Problems we have seen in Class (and their relation to other courses) Core Material of this course Related to CS 411/CS 511 Related to CS 423/523 Related to CS 421/CS 433 Related to CS 525

CS525: Advanced Distributed Systems (taught by Indy) CS 525, Spring 2015 –Looks at hot topics of research in distributed systems: clouds, p2p, distributed algorithms, sensor networks, and other distributed systems –We read many papers and webpages for cutting-edge systems (research and production) –If you liked CS425’s material, it’s likely you’ll enjoy CS525 –Project: Choose between Research project or Entrepreneurial project Your project will build a cutting edge research distributed system, and write and publish a paper on it Your project will build a distributed system for a new startup company idea (your own!) and perform associated research with it –Both graduates and undergraduates welcome! (let me know if you need my consent). –Class size is around 70 –Previous research projects published in journals and conferences, some great startup ideas too!

Questions?

A working definition for us A distributed system is a collection of entities, each of which is autonomous, programmable, asynchronous and failure- prone, and which communicate through an unreliable communication medium. [Is this definition still ok, or would you want to change it?] Think about it! (First lecture slide)

Final Exam Office Hours: Regular [Indy + All TAs] until Dec 12 th (usual schedule). Final Exam –Final Exam, December 12 (Friday), 1.30 PM – 4.30 PM DCL 1320: if your last name starts with A-M Everitt 151: if your last name starts with N-Z Please go to your assigned classroom only! –Syllabus: Includes all material since the start of the course. There may be more emphasis on material since midterm. –Cheat sheet: Allowed to bring a cheat sheet to the exam (A4 size, two sides only, at least 1 pt font). Need to turn it in with exam. –Can bring a calculator (but no other devices). –Structure: Final will be similar in structure to Midterm, only longer. More detailed answers to long questions (partial credit). –Preparing: HW problems, and midterm problems (and textbook problems).

Course Evaluations Main purpose: to give us feedback on how useful this course was to you (and to improve future versions of the course) I won’t see these evaluations until after you see your grades Use pencil only Answer questions 1 and 2 (you can skip #5) Please write your detailed feedback on the back – this is valuable for future versions of the course! After you’ve filled out: –1) Hand survey to volunteer. 2) Pick up your HW4. Volunteer student: 1.Please collect all reviews, and drop envelope in campus mail box 2.Return the box of pencils to me (3112 SC) 3.Return un-collected HW4s to me (3112 SC)