DOC PREVIEW
CORNELL CS 514 - Lecture Notes

This preview shows page 1-2-3-4-26-27-28-53-54-55-56 out of 56 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 56 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 56 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 56 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 56 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 56 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 56 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 56 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 56 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 56 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 56 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 56 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 56 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

CS514: Intermediate Course in Operating SystemsApplications of these ideasSlide 3Specific topics we’ll coverSolutions “inspired” by paradigmsLet’s start with 2PC and transactionsProblem: Pictorial versionIssues?2PC is a good match!SolutionLow availability?Next example: AuditingAuditingUses for auditingPractical worriesPros and consNext in our list?Distributed Garbage CollectionSlide 19Slide 20Slide 21Slide 22Review: what makes it hard?Conceptual solutionChallengesOptions?More practical issuesOther consistent snapshot uses?Review of practical challengesSlide 30Leaders in snapshot protocolsFault-tolerance concernsSlide 33Concurrently running instancesIn your banking project…Last topic for todayeScience systemsThe fault-tolerance problemSlide 39How they approach itThis is a big project at CornellTask migrationScenarioSlide 44What makes this hard?What makes it hard?Slide 47Why is this hard to do?Could one “move” a TCP connection?Migrating a TCP connectionTCP connection stateGeneralizing the ideaFault-tolerant TCP connectionSlide 54Recap and summaryWhat next?CS514: Intermediate Course in Operating SystemsProfessor Ken BirmanVivek Vishnumurthy: TAApplications of these ideasOver the past three weeks we’ve heard aboutTransactionsLogical time, consistent cutsDistributed checkpoint mechanismsAgreement protocols, such as 2PC and 3PCBefore we drill down and learn more mechanisms like these… what good are these things?Applications of these ideasToday, we’ll review some practical applications of the mechanisms we’ve studiedEach is representative of a class Goal is to illustrate the wide scope of these mechanisms, their power, and the ways you might use them in your own workSpecific topics we’ll coverTransactions on multiple serversAuditing a systemDetecting deadlocksFault-tolerance in a long-running eScience applicationDistributed garbage collectionRebalancing objects in a clusterComputing a good routing structureMigrating tasks and TCP connections from server to serverSolutions “inspired” by paradigmsThe solutions we arrive at won’t always use the earlier protocol in a literal wayThink of “paradigms” or “templates”When they match a problem…… you can specialize them to create a good solutionLet’s start with 2PC and transactionsThe problem:Some applications perform operations on multiple databasesWe would like a guarantee that either all the databases get updated, or none doesThe relevant paradigm? 2PCProblem: Pictorial versionGoal? Either p succeeds, and both lists get updated, or something fails and neither doespEmployeesdatabaseCoffeefundCreate new employeeAdd to 3rd-floor coffee fundIssues?P could crash part way through…… a database could throw an exception, e.g. “invalid SSN” or “duplicate record”… a database could crash, then restart, and may have “forgotten” uncommitted updates (presumed abort)2PC is a good match!Adopt the view that each database votes on its willingness to commitUntil the commit actually occurs, update is considered temporaryIn fact, database is permitted to discard a pending update (covers crash/restart case)2PC covers all of these casesSolutionP runs the transactions, but warns databases that these are part of a transaction on multiple databasesThey need to retain locks & logsWhen finished, run a 2PC protocolUntil they vote “ok” a database can abort2PC decides outcome and informs themLow availability?One concern: we know that 2PC blocksThe failure scenario isn’t all that rareOptions?Could use 3PC to reduce this risk, but will pay a cost on every transactionOr just accept the riskCan eliminate the risk with special hardware but may pay a fortune!Next example: AuditingOur goal is to “audit” a systemInvolves producing a summary of the stateShould look as if system was idleOur options?Freeze the whole system, then snapshot the state. This is very disruptiveOr could use the Chandy/Lamport “consistent snapshot” algorithmAuditingAssets Liabilities$1,241,761,251.23$875,221,117.17Uses for auditingIn a bank, may be the only practical way to understand “institutional risk”Need to capture state at some instant in time. If branches report status at closing time, a bank that operates world-wide gets inconsistent answers!In a security-conscious system, might audit to try and identify source of a leakIn a hospital, want ability to find out which people examined which recordsIn an airline, might want to know about maintenance needs, spare parts inventoryPractical worriesSnapshot won’t occur at a point in real timeCould be noticeable to certain kinds of auditorsIn some situations only a truly instantaneous audit can be accepted, but this isn’t commonWhat belongs in the snapshot?Local states… but handling messages in transit can be very hard to doWith Web Services, some forms of remote server calls are nearly transparent!Pros and consImplementing the algorithm is only practicalIf we can implement lossless FIFO channels…… and can intercept and log messages… and in this way capture a “fake” instant in time,So if all of that works… we’re goldenBut doing so may be challengingWS doesn’t really have channels. So how can we interpose a logging mechanism between processes?We’ll be forced to implement a “user-level” version of the algorithm by structuring the application itself appropriatelyThis is one of our project assignmentsNext in our list?Distributed garbage collectionArises more and more commonly in big systems!The problem: applications create objects and pass one-another URLsWe would like to delete objects if there are no URLs pointing to them in the systemWe’ll assume that these URLs all live in machine-readable objects in the file systemAssume we know “root” object in each file system (and are given a list of file systems)Distributed Garbage Collectionroot rootDistributed Garbage CollectionMake a list of candidates at each siteroot rootDistributed Garbage CollectionRemove items from that list if there is a live pointer to them from a remote siteroot rootDistributed Garbage CollectionDelete dead itemsroot rootDistributed Garbage CollectionObject being moved can confuse our search. So can a crashed file serverroot rootReview: what


View Full Document

CORNELL CS 514 - Lecture Notes

Documents in this Course
LECTURE

LECTURE

29 pages

LECTURE

LECTURE

28 pages

Load more
Download Lecture Notes
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 Lecture Notes 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 Lecture Notes 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?