Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/605397.605425acmconferencesArticle/Chapter ViewAbstractPublication PagesasplosConference Proceedingsconference-collections
Article

Evolving RPC for active storage

Published: 01 October 2002 Publication History
  • Get Citation Alerts
  • Abstract

    We introduce Scriptable RPC (SRPC), an RPC-based framework that enables distributed system services to take advantage of active components. Technology trends point to a world where each component in a system (whether disk, network interface, or memory) has substantial computational capabilities; however, traditional methods of building distributed services are not designed to take advantage of these new architectures, mandating wholesale change of the software base to exploit more powerful hardware. In contrast, SRPC provides a direct and simple migration path for traditional services into the active environment.We demonstrate the power and flexibility of the SRPC framework through a series of case studies, with a focus on active storage servers. Specifically, we find three advantages to our approach. First, SRPC improves the performance of distributed file servers, reducing latency by combining the execution of operations at the file server. Second, SRPC enables the ready addition of new functionality; for example, more powerful cache consistency models can be realized on top of a server that exports a simple NFS-like interface. Third, SRPC simplifies the construction of distributed services; operations that are difficult to coordinate across client and server can now be co-executed at the server, thus avoiding costly agreement and crash-recovery protocols.

    References

    [1]
    A. Acharya, M. Uysal, and J. Saltz. Active Disks. In Proceedings of the 8th Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS VIII), San Jose, CA, October 1998.]]
    [2]
    K. Amiri, D. Petrou, G. R. Ganger, and G. A. Gibson. Dynamic Function Placement for Data-intensive Cluster Computing. In Proceedings of the 2000 USENIX Annual Technical Conference, pages 307-322, June 2000.]]
    [3]
    D. Anderson, J. Chase, and A. Vahdat. Interposed Request Routing for Scalable Network Storage. Transactions on Computer Systems (TOCS), 20(1), February 2002.]]
    [4]
    T. Berners-Lee, R. T. Fielding, H. F. Nielsen, J. Gettys, and J. Mogul. Hypertext Transfer Protocol -- HTTP/1.1. Technical Report 2068, Internet Engineering Task Force, January 1997.]]
    [5]
    B. N. Bershad, S. Savage, E. G. S. Przemyslaw Pardyak, M. E. Fiuczynski, D. Becker, C. Chambers, and S. Eggers. Extensibility, Safety and Performance in the SPIN Operating System. In Proceedings of the 15th ACM Symposium on Operating Systems Principles, December 1995.]]
    [6]
    A. D. Birrell and B. J. Nelson. Implementing remote procedure calls. ACM Transactions on Computer Systems, 2(1):39-59, February 1984.]]
    [7]
    N. J. Boden, D. Cohen, R. E. Felderman, A. E. Kulawik, C. L. Seitz, J. N. Seizovic, and W.-K. Su. Myrinet--A Gigabit-per-Second Local-Area Network. IEEE Micro, 15(1):29-38, February 1995.]]
    [8]
    R. H. Campbell and S. M. Tan. μChoices: An Object-Oriented Multimedia Operating System. In In Fifth Workshop on Hot Topics in Operating Systems (HotOS-V), Orcas Island, WA, May 1995.]]
    [9]
    J. B. Chen and B. Bershad. The Impact of Operating System Structure on Memory System Performance. In Proceedings of the 14th ACM Symposium on Operating Systems Principles (SOSP '93), pages 120-133, Asheville, NC, December 1993.]]
    [10]
    M. Dahlin, R. Wang, T. Anderson, and D. Patterson. Cooperative Caching: Using Remote Client Memory to Improve File System Performance. In Proceedings of the 1st USENIX Symposium on Operating Systems Design and Implementation, pages 267-280, November 14-17 1994.]]
    [11]
    A. Davis. 201 Principles of Software Development. McGraw-Hill, 1995.]]
    [12]
    T. E. Denehy, A. C. Arpaci-Dusseau, and R. H. Arpaci-Dusseau. Bridging the Information Gap in Storage Protocol Stacks. In The Proceedings of the USENIX Annual Technical Conference (USENIX '02), pages 177-190, Monterey, CA, June 2002.]]
    [13]
    D. J. DeWitt and P. B. Hawthorn. A Performance Evaluation of Data Base Machine Architectures. In Proceedings of the Seventh Annual Conference Very Large Data Bases (VLDB '81), pages 199-214, 1981.]]
    [14]
    E. Eide, K. Frei, B. Ford, J. Lepreau, and G. Lindstrom. Flick: A Flexible, Optimizing IDL Compiler. In PLDI '97, Las Vegas, NV, June 1997.]]
    [15]
    D. R. Engler, M. F. Kaashoek, and J. W. O'Toole. Exokernel: An Operating System Architecture for Application-Level Resource Management. In Proceedings of the 15th ACM Symposium on Operating Systems Principles, December 1995.]]
    [16]
    M. Fiuczynski, R. Martin, B. Bershad, and D. Culler. SPINE: An operating system for intelligent network adapters. Technical Report TR-98-08-01, University of Washington, Department of Computer Science and Engineering, August 1998.]]
    [17]
    G. A. Gibson, D. F. Nagle, K. Amiri, J. Butler, F. W. Chang, H. Gobioff, C. Hardin, E. Riedel, D. Rochberg, and J. Zelenka. A Cost-Effective, High-Bandwidth Storage Architecture. In Proceedings of the 8th Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS VIII), October 1998.]]
    [18]
    G. A. Gibson, D. F. Nagle, K. Amiri, F. W. Chang, E. M. Feinberg, H. Gobioff, C. Lee, B. Ozceri, E. Riedel, D. Rochberg, and J. Zelenka. File Server Scaling with Network-Attached Secure Disks. In Proceedings of the 1997 ACM SIGMETRICS International Conference on Measurement and Modeling of Computer Systems, pages 272-284, Seattle, WA, June 1997.]]
    [19]
    G. A. Gibson, D. F. Nagle, K. Amiri, F. W. Chang, H. Gobioff, E. Riedel, D. Rochberg, and J. Zelenka. Filesystems for Network-Attached Secure Disks. Technical Report CMU-CS-97-118, Carnegie-Mellon University, 1997.]]
    [20]
    A. Gokhale and D. C. Schmidt. Measuring the Performance of the CORBA Internet Inter-ORB Protocol over ATM. Technical Report WUCS-97-09, Washington University at St. Louis, 1997.]]
    [21]
    J, Gray. Storage Bricks Have Arrived. Invited Talk at the First USENIX Conference on File And Storage Technologies (FAST '02), 2002.]]
    [22]
    S. D. Gribble, E. A. Brewer, J. M. Hellerstein, and D. Culler. Scalable, Distributed Data Structures for Internet Service Construction. In Proceedings of the Fourth Symposium on Operating Systems Design and Implementation (OSDI '00), San Diego, CA, October 2000.]]
    [23]
    J. H. Hartman, I. Murdock, and T. Spalink. The Swarm Scalable Storage System. In Proceedings of the 19th IEEE International Conference on Distributed Computing Systems (ICDCS '99), Austin, Texas, June 1999.]]
    [24]
    J. Howard, M. Kazar, S. Menees, D. Nichols, M. Satyanarayanan, R. Sidebotham, and M. West. Scale and Performance in a Distributed File System. ACM Transactions on Computer Systems (TOCS), 6(1), February 1988.]]
    [25]
    J. Katcher. PostMark: A New File System Benchmark. Technical Report TR-3022, Network Appliance Inc., October 1997.]]
    [26]
    J. Kistler and M. Satyanarayanan. Disconnected Operation in the Coda File System. ACM Transactions on Computer Systems (TOCS), 10(1), February 1992.]]
    [27]
    E. K. Lee and C. A. Thekkath. Petal: Distributed Virtual Disks. In Proceedings of the Seventh Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS VII), pages 84-92, Cambridge, MA, October 1996.]]
    [28]
    D. E. Lowell and P. M. Chen. Free Transactions With Rio Vista. In Proceedings of the 16th ACM Symposium on Operating Systems Principles (SOSP '97), pages 92-101, Saint-Malo, France, October 1997.]]
    [29]
    K. Mai, T. Paaske, N. Jayasena, R. Ho, W. Dally, and M. Horowitz. Smart Memories: A Modular Reconfigurable Architecture. In Proceedings of the 27th Annual International Symposium on Computer Architecture, pages 161-171, June 2000.]]
    [30]
    R. P. Martin, A. M. Vahdat, D. E. Culler, and T. E. Anderson. Effects of communication latency, overhead, and bandwidth in a cluster architecture. In Proceedings of the 24rd Annual International Symposium on Computer Architecture, pages 85-97, Denver, Colorado, June 2-4, 1997. ACM SIGARCH and IEEE Computer Society TCCA.]]
    [31]
    A. Muthitacharoen, B. Chen, and D. Mazières. A Low-Bandwidth Network File System. In Proceedings of the 18th ACM Symposium on Operating Systems Principles (SOSP-01), pages 174-187, Banff, Canada, October 2001.]]
    [32]
    M. Nelson, B. Welch, and J. Ousterhout. Caching in the Sprite Network File System. ACM Transactions on Computer Systems, 6(1):134-154, February 1988.]]
    [33]
    C. Nester, M. Philippsen, and B. Haumacher. A More Efficient RMI for Java. In Proceedings of the ACM 1999 Java Grande Conference, San Francisco, California, June 1999.]]
    [34]
    S. O'Malley, T. Proebsting, and A. B. Montz. USC: A Universal Stub Compiler. In Proceedings of the Conference on Communications Architectures, Protocols and Applications (SIGCOMM '94), London, UK, August 1994.]]
    [35]
    J. K. Ousterhout. Tcl: An Embedable Command Language. In Proceedings of the 1990 USENIX Association Winter Conference, 1990.]]
    [36]
    D. Patterson, T. Anderson, N. Cardwell, R. Fromm, K. Keeton, C. Kozyrakis, R. Thomas, and K. Yelick. Intelligent RAM (IRAM): Chips That Remember And Compute. In 1997 IEEE International Solid-State Circuits Conference, San Francisco, CA, February 1997.]]
    [37]
    E. Riedel, G. A. Gibson, and C. Faloutsos. Active Storage For Large-Scale Data Mining and Multimedia. In Proc. of the 24th International Conference on Very large Databases (VLDB '98), August 1998.]]
    [38]
    T. H. Romer, D. Lee, G. M. Voelker, A. Wolman, W. A. Wong, J.-L. Baer, B. N. Bershad, and H. M. Levy. The structure and performance of interpreters. In Proceedings of the Seventh International Conference on Architectural Support for Programming Languages and Operating Systems, pages 150-159, Cambridge, Massachusetts, October 1-5, 1996. ACM SIGARCH, SIGOPS, and SIGPLAN.]]
    [39]
    M. I. Seltzer, Y. Endo, C. Small, and K. A. Smith. Dealing With Disaster: Surviving Misbehaved Kernel Extensions. In Proceedings of the 2nd USENIX Symposium on Operating Systems Design and Implementation, October 1996.]]
    [40]
    C. Small and M. Seltzer. A Comparison of OS Extension Technologies. In Proceedings of the 1996 USENIX Annual Technical Conference, January 1996.]]
    [41]
    V. Srinivasan and J. C. Mogul. Spritely NFS: Experiments with cache-consistency protocols. In Proceedings of the Twelfth ACM Symposium on Operating Systems Principles, pages 45-57. ACM, December 1989. Order no. 534890.]]
    [42]
    C. A. Thekkath, T. Mann, and E. K. Lee. Frangipani: A Scalable Distributed File System. In Proceedings of the 16th ACM Symposium on Operating Systems Principles (SOSP '97), pages 224-237, Saint-Malo, France, October 1997.]]
    [43]
    Transaction Processing Council. TPC Benchmark B Standard Specification, Revision 3.2. Technical Report, 1990.]]
    [44]
    T. von Eicken, A. Basu, V. Buch, and W. Vogels. U-net: A user-level network interface for parallel and distributed computing. In Proceedings of the Fifteenth ACM Symposium on Operating Systems Principles, pages 40-53, Copper Mountain Resort, CO, USA, 1995.]]
    [45]
    T. von Eicken, D. E. Culler, S. C. Goldstein, and K. E. Schauser. Active Messages: a Mechanism for Integrated Communication and Computation. In Proceedings of the 19th Annual Symposium on Computer Architecture, Gold Coast, Australia, May 1992.]]
    [46]
    M. Welsh and D. Culler. Achieving Robust, Scalable Cluster I/O in Java. In LCR2000: Fifth Workshop on Languages, Compilers, and Run-time Systems for Scalable Computers, Rochester, NY, May 2000.]]

    Cited By

    View all
    • (2014)Decoupled I/O for Data-Intensive High Performance ComputingProceedings of the 2014 43rd International Conference on Parallel Processing Workshops10.1109/ICPPW.2014.48(312-320)Online publication date: 9-Sep-2014
    • (2012)Dynamic Active Storage for High Performance I/OProceedings of the 2012 41st International Conference on Parallel Processing10.1109/ICPP.2012.22(379-388)Online publication date: 10-Sep-2012
    • (2011)Design and evaluation of OasisProceedings of the 2011 IEEE 27th Symposium on Mass Storage Systems and Technologies10.1109/MSST.2011.5937220(1-12)Online publication date: 23-May-2011
    • Show More Cited By

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    ASPLOS X: Proceedings of the 10th international conference on Architectural support for programming languages and operating systems
    October 2002
    318 pages
    ISBN:1581135742
    DOI:10.1145/605397
    • cover image ACM SIGARCH Computer Architecture News
      ACM SIGARCH Computer Architecture News  Volume 30, Issue 5
      Special Issue: Proceedings of the 10th annual conference on Architectural Support for Programming Languages and Operating Systems
      December 2002
      296 pages
      ISSN:0163-5964
      DOI:10.1145/635506
      Issue’s Table of Contents
    • cover image ACM SIGOPS Operating Systems Review
      ACM SIGOPS Operating Systems Review  Volume 36, Issue 5
      December 2002
      296 pages
      ISSN:0163-5980
      DOI:10.1145/635508
      Issue’s Table of Contents
    • cover image ACM SIGPLAN Notices
      ACM SIGPLAN Notices  Volume 37, Issue 10
      October 2002
      296 pages
      ISSN:0362-1340
      EISSN:1558-1160
      DOI:10.1145/605432
      Issue’s Table of Contents
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 01 October 2002

    Permissions

    Request permissions for this article.

    Check for updates

    Qualifiers

    • Article

    Conference

    ASPLOS02

    Acceptance Rates

    ASPLOS X Paper Acceptance Rate 24 of 175 submissions, 14%;
    Overall Acceptance Rate 535 of 2,713 submissions, 20%

    Upcoming Conference

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)4
    • Downloads (Last 6 weeks)0

    Other Metrics

    Citations

    Cited By

    View all
    • (2014)Decoupled I/O for Data-Intensive High Performance ComputingProceedings of the 2014 43rd International Conference on Parallel Processing Workshops10.1109/ICPPW.2014.48(312-320)Online publication date: 9-Sep-2014
    • (2012)Dynamic Active Storage for High Performance I/OProceedings of the 2012 41st International Conference on Parallel Processing10.1109/ICPP.2012.22(379-388)Online publication date: 10-Sep-2012
    • (2011)Design and evaluation of OasisProceedings of the 2011 IEEE 27th Symposium on Mass Storage Systems and Technologies10.1109/MSST.2011.5937220(1-12)Online publication date: 23-May-2011
    • (2010)Enabling active storage on parallel I/O software stacksProceedings of the 2010 IEEE 26th Symposium on Mass Storage Systems and Technologies (MSST)10.1109/MSST.2010.5496981(1-12)Online publication date: 3-May-2010
    • (2009)Block management in solid-state devicesProceedings of the 2009 conference on USENIX Annual technical conference10.5555/1855807.1855828(21-21)Online publication date: 14-Jun-2009
    • (2009)Abstract storageProceedings of the second international workshop on Data-aware distributed computing10.1145/1552280.1552284(31-40)Online publication date: 9-Jun-2009
    • (2008)Active storage revisitedProceedings of the 5th conference on Computing frontiers10.1145/1366230.1366280(293-304)Online publication date: 5-May-2008
    • (2006)Active Storage Framework for Object-based Storage DeviceProceedings of the 20th International Conference on Advanced Information Networking and Applications - Volume 0210.1109/AINA.2006.69(97-101)Online publication date: 18-Apr-2006
    • (2005)Object-based storage: pushing more functionality into storageIEEE Potentials10.1109/MP.2005.146246424:2(31-34)Online publication date: Apr-2005
    • (2005)Customizing the swarm storage system using agentsSoftware: Practice and Experience10.1002/spe.68536:2(117-137)Online publication date: 15-Sep-2005
    • Show More Cited By

    View Options

    Get Access

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media