320 likes | 603 Views
COMET Group Columbia University. Spawning Networks. People. Andrew T. Campbell (Columbia) Herman G.De Meer (Univ. of Hamburg) Michael E.Kounavis (Columbia) Kazuho Miki (Hitachi) John Vicente (Intel) Daniel Villela (Columbia). Motivation. deployment of network architectures:
E N D
COMET Group Columbia University Spawning Networks
People • Andrew T. Campbell (Columbia) • Herman G.De Meer (Univ. of Hamburg) • Michael E.Kounavis (Columbia) • Kazuho Miki (Hitachi) • John Vicente (Intel) • Daniel Villela (Columbia)
Motivation • deployment of network architectures: • ad-hoc in nature and costly • no systematic exploration of the “network design space” • virtual networking • isolation and privacy • quality of service support
State of the Art • open programmable interfaces • OPENSIG, IEEE P1520 • deployment at runtime • DARPA Active Networks • multiple control architectures • Multiservice Switching Forum
Spawning Networks • new class of programmable networks • capable of creating new architectures on-the-fly • automate a “life cycle” process • enabling technology: • the Genesis kernel
child virtual network differential service virtual network cellular IP virtual network physical network
Life Cycle • profiling • Captures the “blueprint” of the virtual network • spawning • allocates resources, sets up topology, binds transport, control, and management • management • architecting • resource management
Design Principles • separation • transparency of operation between parent and child networks • nesting • child networks, can be parent of their own children • inheritance • architectural components • provisioning characteristics
network architecture #2 child virtual network kernel metabus #2 network architecture #1 life cycle services binding interface base parent virtual network kernel programming environment metabus #1 transport environment Genesis Kernel spawning
Transport Environment • consists of programmable virtual nodes called “routelets” • routelets : • interconnected via “virtual links” • share parent routelet resources • may coexist in the same physical node • virtual links : • abstractions of resource partitions
L1, L2, and L3 partitioning • L1: WDM • L2: Switchlets (Cambridge Univ.) • L3: Routlets (Columbia Univ.)
spawning controller datapath controller allocation controller composition controller Routelet Architecture binding interface base metabus routelet state control unit forwarding engine output port input port
virtual network demultiplexor output port forwarding engine capacity arbitrator input port virtual network classifier local routing control virtual network traffic control local traffic control Nested Routelets forwarding engine output port input port local routing control local traffic control packet packet
Programming Environment • spawning networks • program their own routelets • deploy network architectures • metabus • per-virtual network software bus for object interaction • partitions distributed object space • binding interface base • supports open routelet control
GUI spawning life cycle server resource management profiling architecting virtual network architecture transport Spawner Architect life cycle services routing QOS control Profiler Maestro management VirtualSpawningController VirtualRouteletState VirtualCompositionController VirtualAllocationController VirtualDatapathController binding interface base metabus
Life Cycle Services • support profiling spawning and management of virtual networks • inherited during the spawning process • programmable upon the binding interface base and metabus
Profiling • topology • specified in terms of a set of parent nodes and links • architectural elements • specified in terms of routelet components, and communication protocols • resource requirements • required bandwidth • capacity classes
Profiling System GUI profiling life cycle server resource management spawning architecting profile database profile database profiler verifiers policy server
Spawning • spawning services • spawner, constructors, component storage • spawning process: • creates child routelets • binds them together through virtual links • creates a metabus • deploys life cycle services • deploys a network architecture
spawning controller datapath controller allocation controller composition controller arbitrator classifier GUI profiling life cycle server resource management spawning architecting spawner constructor BIB metabus routelet state output port forwarding engine input port CPU
GUI profiling life cycle server resource management spawning architecting spawner constructor routelet state BIB metabus routelet state spawning controller datapath controller composition controller allocation controller arbitrator classifier output port CPU forwarding engine input port CPU
GUI profiling life cycle server resource management spawning architecting spawner constructor routelet state BIB metabus routelet state spawning controller datapath controller composition controller allocation controller arbitrator classifier output port CPU forwarding engine input port CPU
GUI profiling life cycle server resource management spawning architecting spawner constructor BIB metabus spawning controller composition controller allocation controller routelet state spawning controller datapath controller composition controller allocation controller arbitrator classifier output port forwarding engine input port CPU routelet state CPU
output port routelet state spawning controller datapath controller composition controller allocation controller forwarding engine input port GUI profiling life cycle server resource management spawning architecting spawner constructor BIB metabus routelet state spawning controller datapath controller composition controller allocation controller output port CPU forwarding engine input port arbitrator classifier CPU
GUI profiling life cycle server resource management life cycle services spawning architecting spawner BIB metabus constructor routelet state BIB metabus spawning controller datapath controller composition controller allocation controller routelet state output port forwarding engine spawning controller datapath controller composition controller allocation controller input port output port CPU forwarding engine input port arbitrator classifier CPU
GUI profiling child network architecture life cycle server resource management spawning architecting spawner constructor routelet state BIB metabus spawning controller datapath controller composition controller allocation controller routelet state output port forwarding engine spawning controller datapath controller composition controller allocation controller input port output port CPU forwarding engine input port arbitrator classifier CPU life cycle services BIB metabus
Virtual Network Management • Architecting • virtual networks can be visualized • services can added modified or deleted • Resource Management • distributed auctioning process • slow timescale • capacity classes • as general “resource pipes” • inheritance and autonomous control
Management System spawner maestro resource management interfaces admission control interfaces auctioneers monitor delegate VirtualDatapathController BIB metabus arbitrator
Related Word • Tempest Project • Multiple Control Architectures • Netscript Project • Virtual Active Networks • X-Bone • Automates the deployment of IP overlays • Supranet • Secure collaborative environments
Conclusion • Spawning Networks: • automate the life cycle process • result in better network customization • enable the deployment of new network services • genesis:/’d3en|s|s/ n. 1. The origin, or mode of formation or generation of a thing