DOC PREVIEW
U of I CS 525 - Advanced Topics in Distributed Systems

This preview shows page 1-2-3 out of 9 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 9 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 9 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 9 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 9 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

1CS525 Advanced Topics in Distributed SystemsSpring 2008Indranil Gupta (Indy)Lecture 1January 15, 2008What is a Distributed System? (examples)The Internet Gnutella peer to peer systemFood Web of Little Rock Lake, WIA Sensor NetworkCan you name some examples of Operating Systems?Can you name some examples of Operating Systems?…Linux WinXP Unix FreeBSD Mac2K Aegis Scout Hydra Mach SPINOS/2 Express Flux Hope SpringAntaresOS EOS LOS SQOS LittleOS TINOSPalmOS WinCE TinyOS…What is an Operating System? What is an Operating System?• User interface to hardware (device driver)• Provides abstractions (processes, file system)• Resource manager (scheduler)• Means of communication (networking)• …2FOLDOC definition• The low-level software which handles the interface to peripheral hardware, schedules tasks, allocates storage, and presents a default interface to the user when no application program is running.• The OS may be split into a kernel which is always present and various systemprograms which use facilities provided by the kernel to perform higher-level house-keeping tasks, often acting as servers in a client-server relationship.• Some would include a graphical user interface and window system as part of the OS, others would not. The operating system loader, BIOS, or other firmware required at boot time or when installing the operating system would generally not be considered part of the operating system, though this distinction is unclear in the case of a roamable operating system such as RISC OS.• The facilities an operating system provides and its general design philosophy exert an extremely strong influence on programming style and on the technical cultures that grow up around the machines on which it runs.Can you name some examples of Distributed Systems?Can you name some examples of Distributed Systems?• Client-server (e.g., NFS)• The Internet• The Web• An ad-hoc network• A sensor network• DNS• Kazaa (peer to peer overlays)What is a Distributed System?FOLDOC definitionA 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.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]3Unsatisfactory• Why are these definitions short? • Why do these definitions look inadequate to us?• Because we are interested in the insides of a distributed system– algorithmics– design and implementation– maintenance– studyI shall not today attempt further to define the kinds of material I understand to be embraced within that shorthand description; and perhaps I could never succeed in intelligibly doing so. But I know it when I see it, and the motion picture involved in this case is not that. [Potter Stewart, Associate Justice, US Supreme Court (talking about his interpretation of a technical term laid down in the law, case Jacobellis versus Ohio 1964) ]A working definition for usA 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.• Our interest in distributed systems involves – algorithmics, design and implementation, maintenance, study• Entity=a process on a device (PC, PDA, mote)• Communication Medium=Wired or wireless networkA range of interesting problems for Distributed System designers•• Routing [IP,BGP]• Multicast [IP multicast, SRM, RMTP]• Post and retrieve [Usenet]• Search [Kazaa, Google]• Storage [Databases]• Coordination [SETI@Home]••A range of challenges•• Failures• Asynchrony• Scalability• Security•MulticastMulticast4MulticastDistributedDistributedGroup ofGroup of““NodesNodes””==ProcessesProcessesat Internetat Internet--based hostsbased hostsNode with a piece of information to be communicated to everyoneFault-tolerance and ScalabilityMulticast senderMulticast senderMulticast ProtocolMulticast ProtocolNodes may crashNodes may crashPackets may Packets may be dropped be dropped 10001000’’s of nodess of nodesXXXXCentralizedUDP/TCP packetsSimplest Simplest implementationimplementationProblems?Problems?Tree-BasedUDP/TCP packetse.g., e.g., IPmulticastIPmulticast, SRM, SRMRMTP, TRAM,TMTPRMTP, TRAM,TMTPTree setupTree setupand maintenanceand maintenanceProblems?Problems?A Third ApproachMulticast senderMulticast senderGossip messages (UDP)Gossip messages (UDP)Periodically, transmit to Periodically, transmit to b b random targetsrandom targets5Other nodes do same Other nodes do same after receiving multicastafter receiving multicastGossip messages (UDP)Gossip messages (UDP)“Epidemic” Multicast (or “Gossip”)Protocol Protocol roundsrounds(local clock)(local clock)b b random targets per roundrandom targets per roundUninfectedUninfectedInfectedInfectedGossip Message (UDP)Gossip Message (UDP)PropertiesClaim that this simple protocol• Is lightweight in large groups• Spreads a multicast quickly• Is highly fault-tolerantAnalysisFrom old mathematical branch of Epidemiology[Bailey 75]• Population of (n+1) individuals mixing homogeneously• Contact rate between any individual pair is • At any time, each individual is either uninfected (numbering x) or infected (numbering y)• Then,and at all times• Infected–uninfected contact turns latter infectedβ1,00== ynx1+=+nyxAnalysis (contd.)• Continuous time process• Then(why?)with solution(correct? can you derive it?)xydtdxβ−=tntnnenyennnx)1()1(1)1(,)1(+−+++=++=ββ6Epidemic MulticastProtocol Protocol roundsrounds(local clock)(local clock)b b random targets per roundrandom targets per roundUninfectedUninfectedInfectedInfectedGossip Message (UDP)Gossip Message (UDP)Epidemic Multicast Analysis(why?)Substituting, at time t=clog(n), num. infected is(correct? can you derive it?)nb=β21)1(−−+≈cbnnyAnalysis


View Full Document

U of I CS 525 - Advanced Topics in Distributed Systems

Documents in this Course
Epidemics

Epidemics

12 pages

LECTURE

LECTURE

7 pages

LECTURE

LECTURE

39 pages

LECTURE

LECTURE

41 pages

P2P Apps

P2P Apps

49 pages

Lecture

Lecture

48 pages

Epidemics

Epidemics

69 pages

GRIFFIN

GRIFFIN

25 pages

Load more
Download Advanced Topics in Distributed Systems
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Advanced Topics in Distributed Systems and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Advanced Topics in Distributed Systems 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?