Spawning networks are a new class of programmable networks that automate the life cycle process for the creation, deployment, and management of network architecture. These networks are capable of spawning distinct child virtual networks with their own transport, control, and management systems. This definition is created because the deployment of new network architectures, services, and protocols is often manual, ad hoc, and time-consuming.
The definition was introduced in a paper titled Spawning Networks, published in IEEE Networks by a group of researchers from Columbia University, University of Hamburg, Intel Corporation, Hitachi Limited, and Nortel Networks.
The authors are Andrew T. Campbell, Michael E. Kounavis, Daniel A. Villela, of Columbia University, John B. Vicente, of Intel Corporation, Hermann G. De Meer, of University of Hamburg, Kazuho Miki, of Hitachi Limited, and Kalai S. Kalaichelvan, of Nortel Networks.
There was also a paper titled "The Genesis Kernel: A Programming System for Spawning Network Architectures", Michael E. Kounavis, Andrew T. Campbell, Stephen Chou, Fabien Modoux, John Vicente and Hao Zhuang.
A first implementation of Spawning Networks was realized at Columbia University as part of the Ph.D thesis work of Michael Kounavis. This implementation is based on the design of the Genesis Kernel, a programming system consisting of three layers: A transport environment which is a collection of programmable virtual routers, a programming environment which offers open access to the programmable data path and a life cycle environment which is responsible for spawning and managing network architectures. One of the concepts used in design of the Genesis Kernel is the creation of a network architecture based on a profiling script specifying the architecture components and their interaction.