PASTE: A Network Programming Interface for Non-Volatile Main Memory

Michio Honda, Giuseppe Lettieri, Lars Eggert, Douglas Santry

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Non-Volatile Main Memory (NVMM) devices have been integrated into general-purpose operating systems through familiar file-based interfaces, providing efficient byte-granularity access by bypassing page caches. To leverage the unique advantages of these high-performance media, the storage stack is migrating from the kernel into user-space. However, application performance remains fundamentally limited unless network stacks explicitly integrate these new storage media and follow the migration of storage stacks into user-space. Moreover, we argue that the storage and the network stacks must be considered together when being designed for NVMM. This requires a thoroughly new network stack design, including low-level buffer management and APIs.

We propose PASTE, a new network programming interface for NVMM. It supports familiar abstractions—including busy-polling, blocking, protection, and run-to-completion—with standard network protocols such asTCP and UDP. By operating directly on NVMM, it can be closely integrated with the persistence layer of applications. Once data is DMA’ed from a network interface card to host memory (NVMM), it never needs to be copied again—even for persistence. We demonstrate the general applicability of PASTE by implementing two popular persistent data structures: a write-ahead log and a B+ tree. We further apply PASTE to three applications: Redis, a popular persistent key-value store, pKVS, our HTTP-based key value store and the logging component of a software switch, demonstrating that PASTE not only accelerates networked storage but also enables conventional networking functions to support new features.
Original languageEnglish
Title of host publicationProceedings of the 15th USENIX Conference on Networked Systems Design and Implementation
Place of PublicationRenton, WA, USA
PublisherUSENIX Association
Pages17–33
Number of pages17
ISBN (Print)978-1-939133-01-4
Publication statusPublished - 9 Apr 2018
Event15th USENIX Symposium on Networked Systems Design and Implementation - Renton, United States
Duration: 9 Apr 201811 Apr 2018
https://www.usenix.org/conference/nsdi18

Conference

Conference15th USENIX Symposium on Networked Systems Design and Implementation
Abbreviated titleNSDI'18
Country/TerritoryUnited States
CityRenton
Period9/04/1811/04/18
Internet address

Fingerprint

Dive into the research topics of 'PASTE: A Network Programming Interface for Non-Volatile Main Memory'. Together they form a unique fingerprint.

Cite this