200 likes | 354 Views
The SILO project is funded by the National Science Foundation FIND Grant. SILO: A novel framework for flexible protocol composition. George Rouskas , Rudra Dutta , Anjing Wang, Mohan Iyer North Carolina State University,. Dan Stevenson RTI. Ilia Baldine,
E N D
The SILO project is funded by the National Science Foundation FIND Grant SILO: A novel framework for flexible protocol composition George Rouskas, RudraDutta, Anjing Wang, Mohan Iyer North Carolina State University, Dan Stevenson RTI Ilia Baldine, Renaissance Computing Institute
Motivation • Observations of the current state • Balkanization of protocols (VoIP, sensor nets, wireless, high-speed) • Proliferation of half-layer solutions (IPSec, MPLS etc) • Ossification of protocol research (e.g. growing number of TCP variants) • Lack of explicit cross-layer interactions • Inability to separate salient features of protocols • Looking forward • Provide ways for smooth evolution of protocols for new transport technologies, control algorithms
Musings • Layering is important, however rigid layer boundaries are limiting • Design for change: create a meta-design that can accommodate future changes • Architecture must constrain – otherwise you get proliferation of functions at various places • But must not constrain wrong thing and stifle innovation, ossify, etc. • Job of architecture – constrain (channel) the mechanisms used for different players to bring their various pieces and use them
App App App App App App m11 m11 m13 Transport Transport Cross- Service Tuning silo & service mgmt m21 m21 m31 Network m21 m31 m31 Data Link m42 m43 Physical Tuning strategies, hints Composability Constraints m62 m62 m61 Physical Channels Physical Channels Traditional and SILO network stacks
SILO Features • Emphasis on re-usability, not miniaturization • Automated construction of silos via ontology • Explicit cross-layer control and interactions • Separation of mechanisms from policies • Do not require specific OS architecture – just a convention for implementation (template or pattern)
The SILO hourglass • What is the convergence point? • Service API • Ontology schema (a language to describe network services)
SILO Ontology • Encodes knowledge on relations between services and methods • Encodes service types and functions to enable ‘fuzzy’ inference • Written using Protégé in RDF • Work in progress
SILO as a research tool • SILO is deployed with ontology and existing set of services • Researcher brings • Custom services • Tuning algorithms • Ontology updates • Can connect to measurement functions to provide a cross-layer protocol experimentation tool • Allows experimentation with various layering approaches exploring the optimization space
Wireless example: adaptive transport • Goal: design a set of services and cross-layer tuning algorithm to maximize goodput across a wireless network • Adaptive FEC service • Adaptive MTU service • Adaptive window management service • Tuning algorithm to manage the knobs
Optical example: impairment-aware routing • Goal: design an optical-impairment-aware routing protocol that maximizes network utilization • Distributed impairment measurement capabilities (e.g. PMD) • Routing service capable of using the information
Silo proof-of-concept • User-space open framework • C++ and Python • Methods are DLLs with a well-defined interface • Silo construction agent uses ontology to create an XML “recipe” for a silo • Silo Management Agent • Loads and executes the code for silos based on packet events and timers • Maintains silo state • Silo Tuning Agent is a container for tuning algorithms/strategies associated with services • Universe of Services contains the ontology and dynamically loadable code implementing methods
Available APIs • Application API • Socket like for managing data transfers • Ability to specify constraints on silo construction imposed by the application writer • Service API • Well-defined set of functions for managing service interfaces (upper, lower, tuning knobs and gauges) • SBuf (mbuf or skbuf like) state • Service state
Future steps • Joint projects • Converged Services Platform • Optical IMF for GENI • Silo similarity/synchronization • Construction of siloplexes • Software-defined optics • Network Virtualization • Consistency • Stability • New services • New transports • New addressing schemes • New routing implementations • ….