The Genesis Project


genesis: /`d3enISIS n. 1 The origin or mode of formation or generation of a thing 

Spawning Networks

The deployment of new network architectures, services, protocols and technologies is often manual, ad-hoc and time consuming. "Spawning Networks", a new class of programmable networks, automates the life cycle process for the creation, deployment and management of network architectures. These networks are capable of spawning distinct "child" virtual networks with their own transport, control and management systems. A child network operates on a subset of its "parent's" network resources and in isolation from other spawned networks. Spawned child networks support the controlled access to communities of users with specific connectivity, security and quality of service requirements.

The key enabling technology for spawning networks is the "Genesis Kernel", a virtual network operating system, capable of profiling, spawning and managing virtual network architectures on-the-fly.

The Genesis Kernel

We believe that the design, creation and deployment of new network architectures should be automated and built on a foundation of spawning networks. The emergence of open programmable networks is enabling new approaches to the problem of service creation and support for multiple control architectures. This is resulting in better network customization, resource control and time to deployment for new network services.

Spawning networks represent a new approach to field of programmable networking where the network environment is capable of dynamically creating new network architectures on-the-fly. We describe the process of automating the creation, deployment and management of new network architectures as "spawning". The term 'spawning' finds a parallel with an operating system spawning a child process. By spawning a process the operating system creates a copy of the calling process. The calling process is known as the parent process and the new process as the child process. Notably, the child process inherits its parent's attributes typically executing on the same hardware (i.e. CPU). We envision programmable networks as having the capability to spawn not processes but complex virtual network architectures. This is a departure from the operating systems analogy, where the parent and child typically share the same hardware. We describe the Genesis Kernel as a virtual network kernel capable of automating the virtual network life cycle process, that is, profiling, spawning and managing programmable virtual network architectures on-the-fly. The Genesis Kernel is the key enabling technology behind spawning networks and represents a next-generation approach to the development of programmable network environments.

The Genesis Team, Photo Taken Summer 2001, Hillsboro, OR.

The Genesis "Box" Testbed, based on the IXP1200 Network Processor is donated by Intel Corporation

Ph.D Theses

Networking Software

Publications

Journals

  • M. E. Kounavis, A. T. Campbell, S. Chou, F. Modoux, J. Vicente, and H. Zhang, "The Genesis Kernel: A Programming System for Spawning Network Architectures", IEEE Journal on Selected Areas in Communications (JSAC), Special Issue on Active and Programmable Networks, Vol. 19, No. 3, pp. 49-73, March, 2001.
    [pdf][ps.gz]

  • D. A. Villela, A. T. Campbell and J. Vicente, "Virtuosity: Programmable Resource Management for Spawning Networks", Computer Networks, Special Issue on Active Networks, Vol. 36, No. 1, pp. 49-73, June, 2001.
    [pdf][ps.gz]

Book Chapters

  • A. T. Campbell, M. E. Kounavis and J. Vicente, "Programmable Networks", Reinhard Wilhelm (ed.), Informatics, 10 Years Back, 10 Years Ahead, Springer-Verlag, Lecture Notes in Computer Science 2000, pp. 34-49, 2001.
    [pdf][ps.gz].

Magazine Articles

  • A. T. Campbell, M. E. Kounavis, D. A. Villela, J. Vicente (Intel), K. Miki(Hitachi), H. G. De Meer and K. S. Kalaichelvan (Nortel), "Spawning Networks", IEEE Network Magazine Vol. 13, No. 4, pp. 16-30, July/August 1999.
    [pdf][ps.gz]

  • A. T. Campbell, G. Coulson and M. E. Kounavis, "Managing Complexity: Middleware Explained", IT Professional Magazine, October 1999.
    [pdf][ps.gz]

Reviews

  • A. T. Campbell, H. G. De Meer, M. E. Kounavis, K. Miki, J. Vicente and D. A. Villela, "A Survey of Programmable Networks", ACM Computer Communications Review, Vol. 29, No. 2, pp. 7-24, April 1999.
    [pdf][ps.gz].

Conferences and Workshops

  • M. E. Kounavis, A. T. Campbell, S. Chou and J. Vicente, "A Programming Environment for Network Processors", Network Processor Conference, West, San Jose, CA, October, 2002.
    [pdf]

  • A. T. Campbell, S. Chou, M. E. Kounavis, V. D. Stachtos, and J. Vicente, "NetBind: A Binding Tool for Constructing Data Paths in Network Processor-Based Routers", Fifth Interational Conference on Open Architectures and Network Programming (OPENARCH' 02), New York, NY, June 28-29, 2002.
    [pdf] [ps.gz]

  • M. E. Kounavis, S. Chou, V. D. Stachtos, and A. T. Campbell "Routelets and Network Processors", Next Generation Network Programming (OPENSIG'01), London, UK, September 24-25, 2001.
    [pdf] [ps.gz]

  • A. T. Campbell, S. Chou, M. E. Kounavis and V. D. Stachtos "Implementing Routelets: Virtual Router Support for the IXP1200 Network Processor", IXA Univeristy Program Workshop, Portland, Oregon, June 21-22, 2001.
    [pdf] [ps.gz]

  • V. D. Stachtos, M. E. Kounavis and A. T. Campbell "Sphere: A Binding Model and Middleware for Routing Protocols", Fourth International Conference on Open Architectures and Network Programming (OPENARCH' 01), Anchorage, Alaska, April 27-28, 2001.
    [pdf][ps.gz]

  • M. E. Kounavis "Implementing Spawning Networks", Programming the Internet (OPENSIG'00), Napa Valley, California, October 11-12, 2000.
    [pdf] [ps.gz]

  • A. T. Campbell, H G. De Meer, M. E. Kounavis , K. Miki, J. Vicente, and D. A. Villela, "The Genesis Kernel: A Virtual Network Operating System for Spawning Network Architectures",  2nd IEEE International Conference on Open Architectures and Network Programming (OPENARCH'99), New York March 26-27 1999.
    [pdf][ps.gz].

  • A. T. Campbell, J. Vicente and D. A. Villela, "Virtuosity: Performing Virtual Network Resource Management",  International Workshop on Quality of Service (IWQOS'99), London, June 1-3 1999.
    [pdf] [ps.gz].

  • A. T. Campbell, J. Vicente, and D. A. Villela, "Managing Spawned Virtual Networks",  First International Working Conference on Active Networks (IWAN'99), Berlin, June 30-July 2, 1999.
    [pdf] [ps.gz].

  • J. Vicente, and A. T. Campbell, "Genesis: Toward Programmable Virtual Networking",  Workshop on Open Signaling for ATM, Internet and Mobile Networks (OPENSIG'98), Toronto, October 5-6, 1998.
    [pdf] [ps.gz].

White Papers

  • A. A. Lazar, and A. T. Campbel, "Spawning Network Architectures", Technical Report, Center for Telecommunications Research, Columbia University, January 1998.
    [pdf][ps.gz].

  • Lazar, A.A., "Programmable Broadband Kernel", Technical Report, Center for Telecommunications Research, Columbia University, November 1997.
    [pdf] [ps.gz].

Presentations Activities Related sites Sponsors

The Genesis Project is sponsored by the NSF CAREER Award ANI 9876299 and with support from the Intel Research Council, Hitachi, and Nortel Networks.


genesis@comet.columbia.edu