Don't call them middleboxes, call them middlepipes

As interest grows in introducing network functions---middleboxes---to Platform as a Service (PaaS) clouds, it is tempting to treat them as normal PaaS services. However, the PaaS service abstraction lacks sufficient support for middlebox services. For example, network functions may require proximity to data sources for efficient snooping or request rewriting, or access to raw packets rather than application-level requests. Instead, we propose a new network function abstraction to PaaS clouds called middlepipes. True to PaaS philosophy, middlepipes are sufficiently high level for application developers to forget about details like packets vs. requests and data source proximity. Middlepipes can be chained together to cooperatively interpose on traffic between applications and services. Furthermore, they can generate callbacks into applications; in this paper, we describe the middlepipe PaaS architecture in the context of a "circuit breaker" network function.