IntroductionSystem Design DetailsDemonstrationsConclusionsIntroductionSystem Design DetailsDemonstrationsConclusionsCanopyA Controlled Emulatio n Environment forNetwork System ExperimentationDan Ports, Austin Clements, and Jeff ArnoldMIT 6.829 ProjectThursday, December 8, 2005Dan Ports, Austin Clements, and Jeff Arnold CanopyIntroductionSystem Design DetailsDemonstrationsConclusions1Introduction2System Design Details3Demonstrations4ConclusionsDan Ports, Austin Clements, and Jeff Arnold CanopyIntroductionSystem Design DetailsDemonstrationsConclusionsWhy Debugging Networked Systems is HardDan Ports, Austin Clements, and Jeff Arnold CanopyIntroductionSystem Design DetailsDemonstrationsConclusionsWhy Debugging Networked Systems is HardScale and IsolationDan Ports, Austin Clements, and Jeff Arnold CanopyIntroductionSystem Design DetailsDemonstrationsConclusionsWhy Debugging Networked Systems is HardScale and IsolationWant efficient centralized controlDan Ports, Austin Clements, and Jeff Arnold CanopyIntroductionSystem Design DetailsDemonstrationsConclusionsWhy Debugging Networked Systems is HardScale and IsolationWant efficient centralized controlTolerance to Varying Conditi onsDan Ports, Austin Clements, and Jeff Arnold CanopyIntroductionSystem Design DetailsDemonstrationsConclusionsWhy Debugging Networked Systems is HardScale and IsolationWant efficient centralized controlTolerance to Varying Conditi onsWant to be able to see how various conditions affect thesystemDan Ports, Austin Clements, and Jeff Arnold CanopyIntroductionSystem Design DetailsDemonstrationsConclusionsDebugger Wish ListDan Ports, Austin Clements, and Jeff Arnold CanopyIntroductionSystem Design DetailsDemonstrationsConclusionsDebugger Wish ListRollback to any timeReplay with only specified changesWant scalable centralized controlDan Ports, Austin Clements, and Jeff Arnold CanopyIntroductionSystem Design DetailsDemonstrationsConclusionsDebugger Wish ListRollback to any timeEfficient incremental snap shotsReplay with only specified changesWant scalable centralized controlDan Ports, Austin Clements, and Jeff Arnold CanopyIntroductionSystem Design DetailsDemonstrationsConclusionsDebugger Wish ListRollback to any timeEfficient incremental snap shotsReplay with only specified changesFully deterministic virtual machinesWant scalable centralized controlDan Ports, Austin Clements, and Jeff Arnold CanopyIntroductionSystem Design DetailsDemonstrationsConclusionsDebugger Wish ListRollback to any timeEfficient incremental snap shotsReplay with only specified changesFully deterministic virtual machinesWant scalable centralized controlMaster/slave system w/ barrier syncDan Ports, Austin Clements, and Jeff Arnold CanopyIntroductionSystem Design DetailsDemonstrationsConclusionsDefinitions and Overview· · ·masterdSlave physical nodeslavedalbumqemualbumqemuSlave physical nodeslavedalbumqemualbumqemuDan Ports, Austin Clements, and Jeff Arnold CanopyIntroductionSystem Design DetailsDemonstrationsConclusionsBarrier SynchronizationEvery packet arrives at it s physical node before its virtualnode needs itBarriers every 10 msecDan Ports, Austin Clements, and Jeff Arnold CanopyIntroductionSystem Design DetailsDemonstrationsConclusionsSnapshotting and RestoringIncremental snapshot of every virtual node at every n barriersRely on deterministic replay in order to restore to timeswithout snapshotsDan Ports, Austin Clements, and Jeff Arnold CanopyIntroductionSystem Design DetailsDemonstrationsConclusionsAchieving Deterministi c ReplayControl over hardware that O S uses to gather entropyControl over virtual timeAlso allows for control of relative CPU speedsDan Ports, Austin Clements, and Jeff Arnold CanopyIntroductionSystem Design DetailsDemonstrationsConclusionsDemonstrationsPingHTTP download with packet lossDan Ports, Austin Clements, and Jeff Arnold CanopyIntroductionSystem Design DetailsDemonstrationsConclusionsConclusionsDebugging networked systems is hardCanopy makes debugging networked systems easier using:Centralized controlGlobal rollbackDeterministic replay with on ly specified changesCanopy scales approximately linearly with hardwareDan Ports, Austin Clements, and Jeff Arnold CanopyIntroductionSystem Design DetailsDemonstrationsConclusionsFuture WorkQuantify Performance Impact of using Canopy as a DebuggingEnvironmentMore Sophisticated Network ModelImproved User InterfaceDan Ports, Austin Clements, and Jeff Arnold
View Full Document