1 PLuSH – Mesh Tree Fast and Robust Wide-Area Remote Execution Mikhail Afanasyev ‧ Jose Garcia ‧ Brian Lum.

Slides:



Advertisements
Similar presentations
Encrypting Wireless Data with VPN Techniques
Advertisements

Mobile Agents Mouse House Creative Technologies Mike OBrien.
PlanetLab Architecture Larry Peterson Princeton University.
PlanetLab What is PlanetLab? A group of computers available as a testbed for computer networking and distributed systems research.
GENI Experiment Control Using Gush Jeannie Albrecht and Amin Vahdat Williams College and UC San Diego.
An Overview of Gush Jeannie Albrecht David Irwin
Distributed Logging in Java with Constrained Resource Usage Sunil Brown Varghese, Daniel Andresen Dept. of Computing and Information Sciences Kansas State.
Distributed Systems 1 Topics  What is a Distributed System?  Why Distributed Systems?  Examples of Distributed Systems  Distributed System Requirements.
A Flexible Model for Resource Management in Virtual Private Networks Presenter: Huang, Rigao Kang, Yuefang.
Authored by: Rachit Rastogi Computer Science & Engineering Deptt., College of Technology, G.B.P.U.A. & T., Pantnagar.
Real-Time Authentication Using Digital Signature Schema Marissa Hollingsworth BOISECRYPT ‘09.
A Security Pattern for a Virtual Private Network Ajoy Kumar and Eduardo B. Fernandez Dept. of Computer Science and Eng. Florida Atlantic University Boca.
Secure Multicast Xun Kang. Content Why need secure Multicast? Secure Group Communications Using Key Graphs Batch Update of Key Trees Reliable Group Rekeying.
Vault: A Secure Binding Service Guor-Huar Lu, Changho Choi, Zhi-Li Zhang University of Minnesota.
Distributed Application Management Using PLuSH Jeannie Albrecht, Christopher Tuttle, Alex C. Snoeren, and Amin Vahdat UC San Diego CSE {jalbrecht, ctuttle,
Lesson 11-Virtual Private Networks. Overview Define Virtual Private Networks (VPNs). Deploy User VPNs. Deploy Site VPNs. Understand standard VPN techniques.
OSMOSIS Final Presentation. Introduction Osmosis System Scalable, distributed system. Many-to-many publisher-subscriber real time sensor data streams,
SSH : The Secure Shell By Rachana Maheswari CS265 Spring 2003.
1 Introduction to Load Balancing: l Definition of Distributed systems. Collection of independent loosely coupled computing resources. l Load Balancing.
COS 461: Computer Networks
NFS. The Sun Network File System (NFS) An implementation and a specification of a software system for accessing remote files across LANs. The implementation.
Beyond Security Ltd. Port Knocking Beyond Security Noam Rathaus CTO Sunday, July 11, 2004 Presentation on.
The Pros and Cons of Collecting Performance Data using Agentless Technology Dima Seliverstov John Tavares Tianxiang Zhang BMC Software, Inc.
Barracuda Networks Confidential1 Barracuda Backup Service Integrated Local & Offsite Data Backup.
© 2010 VMware Inc. All rights reserved VMware ESX and ESXi Module 3.
Replay Debugging for Distributed Systems Dennis Geels, Gautam Altekar, Ion Stoica, Scott Shenker.
Network File System (NFS) in AIX System COSC513 Operation Systems Instructor: Prof. Anvari Yuan Ma SID:
AN INTRODUCTION TO LINUX OPERATING SYSTEM Zihui Han.
SSH Secure Login Connections over the Internet
Distributed Process Implementation Hima Mandava. OUTLINE Logical Model Of Local And Remote Processes Application scenarios Remote Service Remote Execution.
Introduction to Symmetric Multiprocessors Süha TUNA Bilişim Enstitüsü UHeM Yaz Çalıştayı
Hands-On Microsoft Windows Server 2008 Chapter 1 Introduction to Windows Server 2008.
1 The SpaceWire Internet Tunnel and the Advantages It Provides For Spacecraft Integration Stuart Mills, Steve Parkes Space Technology Centre University.
OASIS V2+ Next Generation Open Access Server CSD 2006 / Team 12.
NETWORK Topologies An Introduction.
Hands-On Microsoft Windows Server 2008 Chapter 1 Introduction to Windows Server 2008.
Remote OMNeT++ v2.0 Introduction What is Remote OMNeT++? Remote environment for OMNeT++ Remote simulation execution Remote data storage.
Chapter 6 Operating System Support. This chapter describes how middleware is supported by the operating system facilities at the nodes of a distributed.
Remote Access Chapter 4. Learning Objectives Understand implications of IEEE 802.1x and how it is used Understand VPN technology and its uses for securing.
Remote Access Chapter 4. Learning Objectives Understand implications of IEEE 802.1x and how it is used Understand VPN technology and its uses for securing.
Tsunami: Maintaining High Bandwidth Under Dynamic Network Conditions Dejan Kostić, Ryan Braud, Charles Killian, Eric Vandekieft, James W. Anderson, Alex.
1.4 Open source implement. Open source implement Open vs. Closed Software Architecture in Linux Systems Linux Kernel Clients and Daemon Servers Interface.
Kiew-Hong Chua a.k.a Francis Computer Network Presentation 12/5/00.
OPERATING SYSTEM SUPPORT DISTRIBUTED SYSTEMS CHAPTER 6 Lawrence Heyman July 8, 2002.
1 Integrating security in a quality aware multimedia delivery platform Paul Koster 21 november 2001.
COSC 513 Operating Systems Project Presentation: Internet Security Instructor: Dr. Anvari Student: Ying Zhou Spring 2003.
2.1 © 2004 Pearson Education, Inc. Exam Designing a Microsoft ® Windows ® Server 2003 Active Directory and Network Infrastructure Lesson 2: Examining.
CCNA4 v3 Module 6 v3 CCNA 4 Module 6 JEOPARDY K. Martin.
Hepix LAL April 2001 An alternative to ftp : bbftp Gilles Farrache In2p3 Computing Center
XWN740 X-Windows Configuring and Using Remote Access (Chapter 13: Pages )‏
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Application Communities Phase II Technical Progress, Instrumentation, System Design, Plans March 10, 2009.
AMH001 (acmse03.ppt - 03/7/03) REMOTE++: A Script for Automatic Remote Distribution of Programs on Windows Computers Ashley Hopkins Department of Computer.
1.4 Open source implement. Open source implement Open vs. Closed Software Architecture in Linux Systems Linux Kernel Clients and Daemon Servers Interface.
Volunteer-based Monitoring System Min Gyung Kang KAIST.
Distributed Systems Ryan Chris Van Kevin. Kinds of Systems Distributed Operating System –Offers Transparent View of Network –Controls multiprocessors.
A System for Monitoring and Management of Computational Grids Warren Smith Computer Sciences Corporation NASA Ames Research Center.
BIG DATA/ Hadoop Interview Questions.
01/27/10 What is PlanetLab? A planet-wide testbed for the R & D of network applications and distributed computing Over 1068 nodes at 493 sites, primarily.
Introduction to Load Balancing:
Diskpool and cloud storage benchmarks used in IT-DSS
Self Healing and Dynamic Construction Framework:
GWE Core Grid Wizard Enterprise (
XWN740 X-Windows Configuring and Using Remote Access
NTC 326Competitive Success/snaptutorial.com
Initial job submission and monitoring efforts with JClarens
Distributed computing deals with hardware
Multithreaded Programming
Operating System Introduction.
Network File System (NFS)
Presentation transcript:

1 PLuSH – Mesh Tree Fast and Robust Wide-Area Remote Execution Mikhail Afanasyev ‧ Jose Garcia ‧ Brian Lum

2 Introduction PlanetLab is an open platform for developing, deploying and accessing planetary-scale services It allows remote execution on nodes around the world Extremely useful in developing new network technologies Introduction ‧ Mesh Tree ‧ Additional

3 PlanetLab Current distribution of 534 nodes over 253 sites Introduction ‧ Mesh Tree ‧ Additional

4 The Motivation Performance is abysmal Currently, the user must make an SSH connection to each node As the number of nodes grows, the overhead of establishing SSH connections becomes more significant Not all nodes can reach one another directly Introduction ‧ Mesh Tree ‧ Additional

5 The Motivation Flaky Control Controlling large sets of remote processes is difficult Example: C-c will result in remote processes being killed or straggler processors to remain Introduction ‧ Mesh Tree ‧ Additional

6 PLuSH Suppose that someone wants to test a new network application and decides to run the code on 100 machines First, we must be able to determine a list of target nodes to run the experience. Nodes can be picked depending on factors including CPU load, bandwidth, latency, etc. Next, the code must be deployed The code must be started simultaneously on all machines. Once the code is running, we must be able monitor the progress and collect statistics Introduction ‧ Mesh Tree ‧ Additional

7 PLuSH One of the core parts of Plush is the Mesh interface Mesh abstracts the underlying overlay Mesh uses a rough list of hosts to construct an overlay communication mesh by using the host directory to query host names and authentication information. Introduction ‧ Mesh Tree ‧ Additional

8 Weaving the Mesh 1. SSH authentication forwarding 2. Building the tree 3. Adding robustness Mesh Tree: SSH Forwarding ‧ Building the Tree ‧ Robustness

9 How SSH Works Agent listens on “ agent socket ” which is a Unix domain socket. Agent has private key. SSH (on agent ’ s side) makes a connection from Home PC to SSHd (daemon) on PL1, who has the public key. SSHd sends challenge to SSH. SSH connects to Agent socket, gives challenge to Agent. Agent uses private key to make response and forwards to SSH, who forwards to SSHd. Challenge Response Challenge Response public key Mesh Tree: SSH Forwarding ‧ Building the Tree ‧ Robustness

10 Our World with PlanetLab The slice breaks up PL1, so SSH cannot forward to SSHd Challenge Response Challenge Response public key Challenge public key Mesh Tree: SSH Forwarding ‧ Building the Tree ‧ Robustness

11 Response SSH Mesh: Response SSH Mesh: Challenge Our Solution Challenge Response Challenge Response public key Challenge public key Challenge Response Client ’ s STDIN and STDOUT are connected to SSHd Mesh Tree: SSH Forwarding ‧ Building the Tree ‧ Robustness

12 Building the Tree There is rudimentary support for a tree We implemented multiple tree-building algorithms Trees can be built using SSH tree and Macedon Mesh Tree: SSH Forwarding ‧ Building the Tree ‧ Robustness

13 Macedon vs. SSH Mesh Macedon Advantages Support for many protocols Does not spend time decrypting and encrypting Disadvantages Can be easily hijacked Heavy program SSH Mesh Advantages Requires minimum client software Provides protection against both sniffing and hijacking Disadvantages Spends time decrypting and encrypting Mesh Tree: SSH Forwarding ‧ Building the Tree ‧ Robustness

14 Adding Robustness The Forwarding mechanism Forwards SSH connection Allows us to change root so that we can detach the experiment controller Allows us to recover from failures in the root Mesh Tree: SSH Forwarding ‧ Building the Tree ‧ Robustness

15 Comparing the trees Introduction ‧ Mesh Tree ‧ Additional

16 Additional Tools Debugging Tool Deploys required files to all necessary nodes Opens multiple simultaneous connections for very high speeds Stops runaway processes Macedon Testing Tool Shows raw data for underlying Macedon communication networks Controls Macedon networks from console Uses self-developed Perl Macedon bindings Introduction ‧ Mesh Tree ‧ Additional

17 Future Research Work Comparison between more Mesh overlay algorithms Evaluate the performance difference between SSH Mesh and Macedon Introduction ‧ Mesh Tree ‧ Additional

18 Additional Thanks We would like to thank the following people for their help Chris Tuttle Jeannie Albrecht Chip Killian Introduction ‧ Mesh Tree ‧ Additional

19 Conclusion Remote execution in PlanetLab through basic SSH connections is neither scalable nor robust We have implemented a solution that improves both scalability and robustness SSH forwarding mechanism Building the tree Adding robustness Introduction ‧ Mesh Tree ‧ Additional