Presentation is loading. Please wait.

Presentation is loading. Please wait.

Lecture 0 Anish Arora CSE 6333 Introduction to Distributed Computing.

Similar presentations


Presentation on theme: "Lecture 0 Anish Arora CSE 6333 Introduction to Distributed Computing."— Presentation transcript:

1 Lecture 0 Anish Arora CSE 6333 Introduction to Distributed Computing

2 Distribution means… Multiple processes (or processors) that can communicate with each other  via shared memory or message channels Each process has only partial knowledge of system parameters  loosely coupled operation, MIMD architecture Processes and communication are subject to faults  Cooperation of processes to achieve a common goal lacks  a shared clock  a global shared memory  accurate failure detection  resource: memory, time, power (sometimes)

3 Distribution goals Scalability Modularity and heterogeneity Data sharing Resource sharing Accommodating geography Reliability, fault-tolerance, security, timeliness, recoverability Low cost, better performance to cost, offloaded maintenance

4 Distribution challenges Concurrency yields complex behaviors  Reasoning about non-determinism, about compositions Consistency/coordination despite lack of global state/time Failure is the “norm” and not the “exception”  Spreading effects of corruption  Many threats and several security exploit  Economic and social impact of denial of service/compromise Scalability

5 Distribution examples Web servers (http) Peer-to-peer services and overlays Grid clusters, Cloud data centers Multi-processor and multi-core systems Wireless sensor network middleware and applications Network and communication protocols Ad hoc, mesh, mobile networks Three tier database servers Client server systems Distributed operating systems Social networks, agents

6 We will discuss… Global time and global state Reasoning about distributed programs Problems in fault-tolerant distribution Wireless sensor networks Distributed data structures, peer-to-peer Systems design: shared memory, message passing, transactional memory

7 Course approach Focus on common, fundamental problems  In abstract form ! Develop and formally specify algorithms Emphasize reasoning about correctness  Properties of systems are validated thus  Proofs also help analyze program performance  Our focus is on deterministic reasoning Some lab exercises (in the context of sensor networks) You will present one published algorithmic concept

8 What we won’t cover Particular distributed operating systems and their implementation issues (see CSE 5911, formerly 762) Programming technologies and middleware for distributed computing, in particular CORBA, Java RMI, EJB, Javaspaces, Jini, XML, and Web Services (see CSE 5234, formerly 769) Security (see CSE 5473, formerly 651) and Cryptography (see CSE 5351, formerly 723) Configuring, managing, and maintaining of distributed systems

9 Course materials WebpageWebpage: http://cse.ohio-state.edu/~anish/763/763.html syllabus, slides, notes, readings, assignments, announcements We’ll use a set of my course notes (some electronic, others not) and papers from the literature References Paul Sivilotti, Course notes, Introduction to Distributed Systems, 2009 A. Kshemkalyani and M. Singhal and N. Shivaratri, Distributed computing Concepts, Algorithms and Systems, Cambridge, 2008 Vijay K. Garg, Elements of Distributed Computing, Wiley, 2002 K. M. Chandy and J. Misra, Parallel Program Design: A Foundation, Addison-Wesley, 1988

10 What we will assume You should be familiar with:  Boolean (propositional and predicate) logic  C/C ++ and/or script programming I expect from you some mathematical maturity, including the ability to learn and use new mathematical & programming notations (NesC for instance )

11 My Expectations Read the material assigned in class Work independently and ethically on homeworks and labs Ask questions

12 Grading plan Homework and lab assignments25% In class quizzes (~5)10% Midterm quiz25% Presentation15% Take-home final quiz 25% Working alone is a must ! Discuss questions with grader or me as need be Grading is relative. An A grade may require a lot less than 90%


Download ppt "Lecture 0 Anish Arora CSE 6333 Introduction to Distributed Computing."

Similar presentations


Ads by Google