As networking researchers, we love to work on ideas that improve the practice of networking. In the early pioneering days of the Internet the link between networking researchers and practitioners was strong; the community was small and everyone knew each other. Not only were there many important ideas from the research community that affected the practice of networking, we were all very aware of them.
This paper presents a novel high-level language for programming packet processors, aiming explicitly at shaping the future of OpenFlow. Motivation is clear: OpenFlow is the de facto standard to control the network. Originally targeting local area networks, and data centers in particular, now OpenFlow covers all scenarios. This comes at a cost: complexity. For instance, the original list of OpenFlow supported “fields” has now grown to more than 40 protocols, mostly due to packet encapsulation that must be processed by switches when looking for the label. In this context, the authors take a revolutionary process: instead of keeping extending the supported field list, they define an open, high-level, flexible interface to define mechanisms for parsing packets and matching header fields: the P4 language. P4 raises the level of abstraction for programming a network, offering an oblivious API to the actual hardware implementation of the switch. Reviewers found this paper to be intriguing, well motivated and clear. Reviewers did give a number of suggestions to improve the presentation of the paper, both to make the ideas more concise, as well as to clarify explanations. This improved the quality of the contribution, hopefully making it a milestone toward OpenFlow 2.0.