1 / 14

NetServ Dynamic in-network service deployment

NetServ Dynamic in-network service deployment. Henning Schulzrinne (Columbia University) Srinivasan Seetharaman (Georgia Tech) Volker Hilt (Bell Labs). NetServ overview. Extensible architecture for core network services. Modularization Building Blocks Service Modules

penda
Download Presentation

NetServ Dynamic in-network service deployment

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. NetServDynamic in-network service deployment Henning Schulzrinne (Columbia University) Srinivasan Seetharaman (Georgia Tech) Volker Hilt (Bell Labs)

  2. NetServ overview Extensible architecture for core network services • Modularization • Building Blocks • Service Modules • Virtual services framework • Security • Portability No more ossification in NGI

  3. How is NetServ different from Active Networks? • Active Networks • Packet contains executable code • Can modify router states and behavior • Not successful • Per-packet processing too expensive • Security concerns • No compelling killer app to warrant such a big shift • Notable work: ANTS, Janos, Switchware • NetServ • Virtualized services on current, passive networks • Service invocation is signaling driven, not packet driven • Service modules are stand-alone, addressable entities • Separate from packet forwarding plane • Extensible plug-in architecture

  4. Building Blocks • Key components of network services • Access to network-level resource • Implementation of common functionality • For example: • Link monitoring and measurement • Routing table • Packet capture • Data storage and lookup

  5. Service Modules • Full-fledged service implementations • Use Building Blocks and other Service Modules • Can be implemented across multiple nodes • Invoked by applications • Examples: • Routing-related services • Multicast, anycast, QoS-based routing • Monitoring services • Link & system status, network topology • Identity services • Naming, security • Traffic engineering services • CDN, redundancy elimination, p2p network support

  6. Virtual Services Framework • Container for Service Modules • Security by module isolation (sandboxes) • Portability by virtualization and common API to Building Blocks • Features • Dynamic distribution of modules • Network service discovery • AAA mechanisms • Wide-range of nodes: routers, servers, PCs, set-top boxes

  7. Research objectives • Define requirements for service-oriented Internet architecture • Design architectural framework for virtualized services • Identify key building blocks • Develop service discovery and distribution mechanisms • Develop a content distribution service as a showcase application

  8. Content Distribution Service:our showcase application • CDN, the current kludge • IP address conflates identity and location • DNS abuse to get around it • Content Distribution Service on NetServ Framework • Based on generalized naming service module • Ideas borrowed from other NGI proposals • Also relies on network monitoring service module • Together with policy info, underlies naming resolution • Evaluation on GENI

  9. Our initial approach • Series of rapid prototyping cycles • Identify technical challenges early on • Start project with code rather than documents and slides

  10. Service Modules Building Blocks written in Java Building Blocks written in Java Building Blocks written in C/C++ (library functions and/or system calls) NetServ prototype technology overview Virtual Services Framework in Java using OSGi Java Native Interface (JNI) wrapper • Click Modular Router • (user or kernel mode)

  11. Prototype technology:Click router • Runs as a Linux kernel module or user-level program • Modules written in C++ (called Elements) are configured in a text file • Elements are arranged in a directed graph, through which packets traverse • Example: • Click router command: sudo click example.click • Configuration file jae.click: FromDevice(en0)->CheckIPHeader(14)->IPPrint->Discard; • http://www.read.cs.ucla.edu/click/

  12. Prototype technology: OSGi • Dynamic module system for Java • Modules loaded and unloaded at runtime • Bundle: self-contained JAR file with specific structure • Open-source implementations: Apache Felix, Eclipse Equinox • Security and accounting • Security built on Java 2 Security model • Permission-based access control • No fine-grained control or accounting for CPU, storage, bandwidth • Can load native code with appropriate permission • Strict separation of bundles • Classpath set up by Bundle class loader • Inter-bundle communication only through published interfaces

  13. 1st prototype implementation Privileged System Bundle (Java) App Bundle (Java) Java Native Interface (JNI) Published interface Equinox open-source OSGi framework Java Virtual Machine Packet queue NetServ Click element in C++ - starts up a JVM packet User-level Click router Single process

  14. Summary • NetServ • Architecture for dynamic in-network service deployment • Modular and extensible • Building Blocks and Service Modules • Secure and portable • Virtualized Services Framework • And it is NOT Active Networks • Content Distribution Service • Our planned showcase application • Our initial approach • Rapid prototyping cycles • Implementation using Click and OSGi

More Related