Download Slides - The University of Texas at Dallas

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Airborne Networking wikipedia , lookup

Wake-on-LAN wikipedia , lookup

Cracking of wireless networks wikipedia , lookup

Distributed firewall wikipedia , lookup

Transcript
A Scalable High-Performance
Active Network Node
Dan S. Decasper and Bernhard Plattner, EETH Zurich
Guru M. Parulkar, Sumi Chai, John D. Dehart, and Tilman
Wolf, Washington University
Presenter: San-Chu Han, Yan Xiao, and Jin Zhang
Introduction
Two approaches in Active Networking:
• Programmable Switches
• Capsules
Convergence
Motivation:
• Some sort of code caching makes a lot of
sense (network caching)
• Users use code from a set of code modules
written by specialists instead of injecting
their own programs into the network
Related Work
•
•
•
•
ANTS (MIT): Capsule approach
Smart Packets (BBN): Capsule approach
Georgia Tech: Network Caching
SwithWare (Univ. of PA): Active Packet,
Switchlet, Secure Active Router
• Scout/Joust (Univ. of AZ): Fastest Java
environment for AN
• Netscript (Columbia University)
Active Networking Node (ANN)
• Hardware: Gigibit Environment
• Software: -NodeOS
-Execution Environment
ANN Hardware
• A high number of processing elements
(PEs) compared to the number of router
ports
• Tight coupling between a processing engine
and the network, as well as between the
processing engine and a switch backplane
• Scalable processing power to meet the
demands of active processing of packets
ANN Software Infrastrucure
• NodeOS: Kernel;
• Execution Environment (EE): active
networking protocol-specific; DAN, Smart
Packets, Switch Ware, IP, etc.
NodeOS
•
•
•
•
•
•
•
Device Drivers (DD)
Packet Classifier (PC)
Selector Dispatcher (SD)
Packet Scheduler (PS)
Resource Controller (RC)
Plugin Control Unit (PCU)
Plugin Manager (PM)
Distributed Code Caching (DAN)
• Combination of the programmable switch
and capsule approaches
• Replace the capsules’ program code by a
reference to an active plugin stored on a
code server
• Code fragment (plugin) is dynamically
linked and executed like local code
DAN features
• Active Plugins in Object Code
• Security Addressed by Use of Well-Known
Cryptography Techniques
• Minimization of Code Download Time
• Policies
• Integration with Existing Network Protocols
Active Plugins in Object Code
• Active plugins are programmed in higherlevel languages such as C and compiled
into object code for the ANN platform
• Once loaded, they are in no way different
than any other code
Security Addressed by Use of
Cryptography Techniques
• All active plugins stored on code servers are
digitally signed by their developers
• Code servers are well-known network nodes
that authenticate active plugins when
sending them to ANN
• ANNs have the capability to check the
plugin’s sources and developer before
installing and running active plugins locally
Minimization of Code Download Time
• Probe packet
• Optimal code server arrangement
• Minimizing the distance between ANN and
code server
Policies
• Acceptance of specified active plugins
• Plugin caching behavior: Setting timeouts
for active plugins.
Integration with Existing Network Protocols
• Data link layer: Link layer control (LLC) SNAP
field
• Network layer: IP options, especially IPv6
• Transport layer: Active plugin download can take
place on connection setup
The DAN Execution
Environment
•
•
•
•
•
•
Active Function Dispatcher (AFD)
Active Plugin Loader (APL)
Policy Controller (PC)
Security Gateway (SG)
Plugin Database Controller (PDC)
Plugin Request (PR)
Code Server
• Feature a database of active plugins
• Networks nodes running a version of the
DPMgmt
• End systems similar to database servers are
better suited to be configured as code
servers
Plugin Packages
•
•
•
•
The code for one or more active functions
The developer’s digital signature
The code server’s authentication info.
Configuration information
Conclusion and Future Work
• Three key components (factors)
• In the process of implementing the system
• Start working on a variety of applications:
automatic protocol deployment and others