Today's Internet Service Providers (ISPs) serve two roles:
managing their network infrastructure and providing (arguably
limited) services to end users. We argue that coupling
these roles impedes the deployment of new protocols
and architectures. Instead, the future Internet should support
two separate entities: infrastructure providers (who manage
the physical infrastructure) and service providers (who deploy
network protocols and offer end-to-end services). We
present a high-level design for Cabo, an architecture that enables
this separation, and we describe challenges associated
with realizing this architecture.