2 research outputs found
Partitioned Paxos via the Network Data Plane
Consensus protocols are the foundation for building fault-tolerant,
distributed systems, and services. They are also widely acknowledged as
performance bottlenecks. Several recent systems have proposed accelerating
these protocols using the network data plane. But, while network-accelerated
consensus shows great promise, current systems suffer from an important
limitation: they assume that the network hardware also accelerates the
application itself. Consequently, they provide a specialized replicated
service, rather than providing a general-purpose high-performance consensus
that fits any off-the-shelf application.
To address this problem, this paper proposes Partitioned Paxos, a novel
approach to network-accelerated consensus. The key insight behind Partitioned
Paxos is to separate the two aspects of Paxos, agreement, and execution, and
optimize them separately. First, Partitioned Paxos uses the network forwarding
plane to accelerate agreement. Then, it uses state partitioning and
parallelization to accelerate execution at the replicas. Our experiments show
that using this combination of data plane acceleration and parallelization,
Partitioned Paxos is able to provide at least x3 latency improvement and x11
throughput improvement for a replicated instance of a RocksDB key-value store
Implementing ChaCha based crypto primitives on programmable SmartNICs
Control and management plane applications such as serverless function orchestration and 4G/5G control plane functions are offloaded to smartNICs to reduce communication and processing latency. Such applications involve multiple inter-host interactions that were traditionally secured using SSL/TLS gRPC-based communication channels. Offloading the applications to smartNIC implies that we must also offload the security algorithms. Otherwise, we need to send the application messages to the host VM/container for crypto operations, negating offload benefits. We propose crypto externs for Netronome Agilio smartNICs that implement authentication and confidentiality (encryption/decryption) using the ChaCha stream cipher algorithm. AES and ChaCha are two popular cipher suites, but we chose ChaCha since none of the smartNICs have ChaCha-based crypto accelerators. However, smartNICs have restricted instruction set, and limited memory, making it difficult to implement security algorithms. This paper identifies and addresses several challenges to implement ChaCha crypto primitives successfully. Our evaluations show that our crypto extern implementation satisfies the scalability requirement of popular applications such as serverless management functions and host in-band network telemetry. © 2022 ACM