Challenging the Stateless Quo of Programmable Switches - Gebara, Nadeen; Lerner, Alberto; Yang, Mingran; Yu, Minlan; Costa, Paolo; Ghobadi, Manya (ACM Workshop on Hot Topics in Networks (HotNets), 2020)
Programmable switches based on the Protocol Independent Switch Architecture (PISA) have greatly enhanced the flexibility of today's networks by allowing new packet protocols to be deployed without any hardware changes. They have also been instrumental in enabling a new computing paradigm in which parts of an application's logic run within the network core (in-network computing). The characteristics and requirements of in-network applications, however, are quite different from those of packet protocols for which programmable switches were originally designed. Packet protocols are typically stateless, while in-network applications require frequent operations on shared state maintained in the switch. This mismatch increases the developing complexity of in-network computing and hampers widespread adoption. In this paper, we describe the key obstacles to developing in-network applications on PISA and propose rethinking the current switch architecture. Rather than changing the existing architecture, we propose augmenting it with a Stateful Data Plane (SDP). The SDP supports the requirements of stateful applications, while the conventional data plane (CDP) performs packet-protocol functions.