Design and Implementation of Runtime Reflection in Communication Middleware: the dynamicTAO Case Manuel Román, Fabio Kon, Roy H. Campbell University of Illinois at Urbana-Champaign
Index zIntroduction zdynamicTAO yArchitecture yDynamic Configuration yORB Consistency ySecurity and Safety zConclusion
Introduction zExecution environments are subject to frequent changes zApplications have knowledge to adapt to changes but cannot use it zDynamic reconfiguration not offered by most communication middleware systems
zdynamicTAO uses reflection techniques to allow runtime modifications zThe adaptation work is pushed to the middleware layer Introduction
dynamicTAO Introduction dynamicTAO Architecture Dynamic Configuration ORB Consistency Security and Safety Conclusion
zBased on TAO, developed at the Washington University in Saint Louis zAllows on-the-fly reconfiguration while keeping the ORB engine consistent dynamicTAO
dynamicTAO Architecture zdynamicTAO is based on a key entity: Component Configurator Domain Configurator TAOConfigurator Servant1 Configurator Concurrency StrategyScheduling Strategy Connection Strategy
dynamicTAO Architecture Local File System Persistent RepositoryACE_Service_RepositoryACE_Service_Config Dynamic Service Config Domain Configurator Servant Configurator TAO_Configurator Network Broker
dynamicTAO Introduction dynamicTAO Architecture Dynamic Configuration ORB Consistency Security and Safety Conclusion
zThree interfaces exported by the Dynamic Service Config: yCORBA interface yTCP/IP interface ySmart Packets zAll three implement the Dynamic Configuration Protocol dynamicTAO Dynamic Configuration
zCommands offered by the Dynamic Configuration Protocol: List Loaded ImplementationsList Domain Components List CategoriesList Hooks List ImplementationsLoad implementation Get UsageHook Implementation Get Implementation InfoRemove Implementation Get Component InfoConfigure Implementation Get Hooked ComponentUpload Implementation Delete ImplementationSuspend Implementation Resume ImplementationAdd / Remove Hook dynamicTAO Dynamic Configuration
dynamicTAO Introduction dynamicTAO Architecture Dynamic Configuration ORB Consistency Security and Safety Conclusion
zdynamicTAO is kept consistent while dynamic changes are carried out. zIssues associated to implementation switching: yChecking compatibility with remaining impl. yTransferring state from the old implementation yImpact on current client requests dynamicTAO ORB Consistency
zIssues associated to implementation deletion: yGarbage collection yVersion control dynamicTAO ORB Consistency
dynamicTAO Introduction dynamicTAO Architecture Dynamic Configuration ORB Consistency Security and Safety Conclusion
dynamicTAO Security and Safety zSecurity refers to the mechanisms that control who can modify the ORB yCORBA security service yCherubim project and active capabilities zSafety prevents crashing the ORB due to faulty implementations: yJava Sandbox
Conclusion Introduction dynamicTAO Architecture Dynamic Configuration ORB Consistency Security and Safety Conclusion
zChanges will happen. Adaptation is required. zdynamicTAO provides the tools to safely introduce those changes zIncoming era of ubiquitous computing requires a highly dynamic customizable framework dynamicTAO Conclusion