Compositional Network Architecture is a comprehensive model of networking based on the ideas that a network is a module, and that network services today are provided by rich, flexible compositions of heterogeneous network modules. Each network/module is a microcosm of networking, with all the basic mechanisms including a namespace, members, links, routing, forwarding, session protocols, and directories. Networks are composed by bridging, with the obvious meaning. They are also composed by layering, which means something new and very specific. In any network, a session is an instance of one of the services provided by that network. One network is layered on another network if a (virtual) link in the overlay network is implemented by a session in the underlay network.
As a consequence, layers in the new model are bigger than layers in the "classic" Internet architecture (see picture for correspondences). The advantage is that a bigger network/layer is more complete, so its interface to an overlay network is the same as the interface of an underlay network to it. In other words, we have made networks composable like Lego bricks.
|Layers in the classic Internet architecture (left), corresponding to layered networks in compositional network architecture.|
This paper applies the new model to describing today's Internet. It explains how, despite the fact that the last major change to IP was made in 1993, the Internet has evolved to meet many new challenges since then. The IP protocol suite offers a general-purpose network design with a widely available implementation; as such, it is re-used to design and implement networks with many different purposes, over many different geographical or logical spans, at many different levels of abstraction.
|From the paper, this figure shows the headers of a typical packet in the AT&T backbone network. The packet is traveling through six layered networks simultaneously.|
This invited talk, given at ETAPS 2018, is intended for software engineers and others interested in networking: "When the Model Really Matters"
This paper is a gentle introduction to the theory, suitable for nonspecialists: "A theory of networks: In the beginning . . ." (Pamela Zave; Dependable Software Systems Engineering, Maxmilian Irlbeck, Doron Peled, and Alexander Pretschner, editors, IOS Press, 2015)
We are engaged in a research project to embody the model in an implementation in P4, so we can explore model-driven design, development, and verification of networks. The biggest benefit of our model for network practitioners is that it explains layering in a completely new way that is realistic, precise, and offers strong modularity to exploit for reuse and verification.
|In the past we have called our model the "geomorphic view" because the complex arrangement of networks in an architecture resembles the arrangement of layers in the earth's crust.|