Top Banner
21/10/2007 The Evaluation of Adaptive Reflective Middlewares in Distributed Systems Farahnaz Poorfard AmirKabir University of Tehran Computer Engineering Department Advisor: Dr. Hossein Pedram Examiner: Dr. Mahdi Dehghan Oct. 2007
42

The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

Jul 18, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/2007

The Evaluation of Adaptive Reflective Middlewares in Distributed Systems

Farahnaz Poorfard

AmirKabir University of Tehran

Computer Engineering Department

Advisor: Dr. Hossein Pedram

Examiner: Dr. Mahdi Dehghan

Oct. 2007

Page 2: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/20073

Outline

• Introduction• Current Middlewares• New requirements and new Ideas• Reflective Component Model• OpenCOM• OpenORB• CFs• Evaluations• Future Works• References

Page 3: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/20074

What is a Distributed System?

A distributed system is a collection of independent computers that appears to its users as a single coherent system.

Page 4: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/20075

What is a Middleware System?

A middleware system constitutes a set of services that aim at facilitating the development of distributed applications in heterogeneous environments.

Page 5: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/20076

An Abstraction of Middleware in aDistributed System

Page 6: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/20077

Some Current Well-known Middlewares

• CORBA• COM• XPCOM• Java RMI• WSDL

Page 7: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/20078

But We Have Some NewRequirements

• Multimedia• Real-time applications• Ad-hoc networks• Mobile networks• Embedded systems• Critical applications• 24x7 applications• …

Page 8: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/20079

They Have Issued New & “Separate”Versions for New Requirements

• CORBA– Real-time CORBA– Minimum CORBA– Data Parallel CORBA– Fault-tolerance CORBA– CORBA/e – CORBA/IIOP

• COM– COM+, .NET, DCOM, COMERA

• Java RMI– J2SE, J2EE, J2ME, Java RMI-IIOP

Page 9: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200710

• Light weight• Configurable• Reconfigurable • Dynamic Reconfigurable• Adaptable• Scalable• Meet the new requirements• …

We Need Some New Middlewares

Page 10: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200711

Some New Ideas

• Object Models• Component Models• Component-object Models• Reflective-component Models• Event-based Models• Horizontal Decomposition Models• …

Page 11: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200712

OpenCOM: An Adaptive ReflectiveComponent Middleware

It has built on top of COM, with saving some properties of COM:

– vtable– IDL– GUIDs– IUnknown Interface

And adding some new concepts:– Making Explicit the Dependencies of each Component,– Adding Basic Mechanism-level Functionality for Reconfiguration,– Supporting for Pre- & Post- Method Call Interception.

Page 12: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200713

Components in OpenCOM …

Components are encapsulated units of functionality and deployment that interact with other components exclusively through “interfaces” and “receptacles”.

Page 13: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200714

… and in the view of Reflection

In Reflective model, a component canreason about and alter itself, in terms of different situations.

Page 14: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200715

Basic Concepts in OpenCOM

• Interface: A unit of service provision.

• Receptacle: A unit of service requirement.

• Connection: Binding a pairs of interface and receptacle, for creating a configuration of components.

a component

a connection

Page 15: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200716

OpenCOM Architecture

Page 16: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200717

Interceptors & ReceptaclesMechanisms

Page 17: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200718

Component Frameworks (CFs)

In OpenORB, we add CFs.

Definition of CFs: “Collections of rules and interfaces that govern the interaction of a set of Components plugged into them.”

Page 18: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200719

Some Sample CFs in OpenORB

Page 19: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200720

The Benefits of CFs

• Abstraction between the CF’s components and the other parts of the system,

• Understanding of system• Maintainability of system

• Reusability• Simplicity for system developers

• Creating of light-weight components for initialization phase,• Disallowing the plug-ins from directly depending on

external components,• Security, Integration of management, Scalability, and coupling

• Preparing the “nesting”, …

Page 20: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200721

A Simple Sample Configurationwith CFs

OpenCOM

OpenORB

Page 21: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200722

Some Strategic Methods inOpenCOM …

Page 22: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200723

… and in OpenORB

Page 23: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200724

“Accept” Component in OpenORB

The Accept Component, Checks the Matching between a Reconfiguration withDetermined Rules

Page 24: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200725

An Example of xml Files

Page 25: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200726

Results for OpenCOM

command time (ms)CoInitialize 15 (once)

CoCreateInstance 31 (once for runtime component)

createInstance 32 (once for each component)

startup 0

connection (connect) 0

operation (method call) 0

interception 46 (once for each proposed interface)

Page 26: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200727

Results for OpenORB

command time (ms)

CoInitialize 15 (once)CoCreateInstane 31 (once for runtime component)createInstance 32 (once for each CF) create_component 32 (once for each component inside CF)startup 0connection (connect/local_bind) 0operation (method call) 0interception 46 (once for each proposed interface)addConfiguration 0expose_interface 47init_arch_transaction 0commit_arch_transaction 16

Page 27: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200728

Test1: Evaluation of Time vs numberof Components

0

50

100

150

200

250

0 0 1 2 3 4 5 6

number of components

time

(ms)

Series1

Page 28: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200729

Test2: Comparison between “Simple”and “Intercepted” Components

0

100

200

300

400

500

600

0 0 1 2 3 4 5

number od components

time

(ms)

Simple Components

Intercepted Components

Page 29: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200730

Test3: Evaluation of Time vs number of Interfaces

0

50

100

150

200

250

0 0 1 2 3 4 5 6

numberr of components

time

(ms)

With One Interface

With Two Interfaces

Page 30: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200731

Test4: Evaluation of Time withadding CFs

020406080

100120140160180200

0 0 0 1 2

number of components

time

(ms)

OpenORB

OpenCOM

Page 31: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200732

Test5: Evaluation of Time with addingCFs (Complete Operations)

0

50

100

150

200

250

0 0 0 1 2 3

number of components

time

(ms)

OpenCOMOpenORB

Page 32: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200733

Test5: Evaluation of Time with addingCFs (Complete Operations)

0

50

100

150

200

250

0 0 0 1 2 3

number of components

time

(ms)

OpenCOMOpenORB

Page 33: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200734

Conclusion

• Fix time for creating each new component

• Fix time for each intercepting– Overhead, but instead reconfiguration operation

• Number of interfaces• Connection/disconnection• Starting a component• Calling methods• Fix time for each CF• Deletion phase

Page 34: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200735

RUNES Middleware

The Whole Scenariofor Road Tunnels:

Page 35: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200736

GridKit Middleware

Suitable for Flooding Scenarios:

Page 36: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200737

Future Works …

• Evaluating in remote mode,• Using new services (like multimedia),• Defining filter plug-ins in multimedia CF,• Building some hierarchies from CFs,• Installing the GridKit, Genie, …• MPI?• …

Page 37: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200738

References (1)

• Nelly Bencomo, Gordon Blair, et al. "Towards a Meta-Modeling Approach to Configurable Middleware,“2nd ECOOP'2005 Workshop on Reflection, AOP and MetaData for Software Evolution, RAM-SEGlasgow, Scotland, 2005.

• Nelly Bencomo, Gordon Blair, "Genie: a Domain-Specific Modeling Tool for the Generation of Adaptiveand Reflective Middleware Families," In submitted to 6th OOPSLA workshop on Domain SpecificModeling, Portland, 2006.

• Nelly Bencomo, Gordon Blair, Paul Grace, "The world ig going MAD: Models for Adaptation,“ACM/IEEE 9th International Conference on Model Driven Engineering Languages and Systems,Genova, Italy, October 2006.

• Nelly Bencomo, "Preening: Reflection of Models in the Mirror", PhD thesis, Comp. Dept, InfoLab21,Lancaster University, 2005.

• G.S. Blair, G. Coulson, et al. "An Architecture for Next Generation Middleware," In Proceedings of theIFIP International Conference on Distributed Systems Platforms and Open Distributed Processing,1998.

• Michael Clarke, Gordon S. Blair, et al. "An Efficient Component Model for the Construction of AdaptiveMiddleware," Lecture Notes in Computer Science, vol. 2218, pages 160--??, 2001.

Page 38: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200739

References (2)

• Michael Clarke, Nikos Parlavantzas, et al. "OpenCOM API Specification," OpenCOM Documents:http://www.comp.lancs.ac.uk/computing/research/mpg/reflection/tutorials.php.

• Geoff Coulson, Gordon S. Blair, et al. "The Design of A Configurable and Reconfigurable MiddlewarePlatform", OpenCOM Documents:http://www.comp.lancs.ac.uk/computing/research/mpg/reflection/tutorials.php, 2002.

• Paolo Costa, Geoff Coulson, et al. "The RUNES Middleware: A Reconfigurable Component-basedApproach to Networked Embedded Systems," In Proceedings of (PIMRC05), IEEE, Berlin, Germany,September 2005.

• Paolo Costa, Geoff Coulson, et al. "The RUNES Middleware for Networked Embedded Systems and itsApplication in a Disaster Management Scenario," Fifth Annual IEEE International Conference onPervasive Copmuting and Communications, 2007, percom '07, pages 69-78, March 2007.

• Geoff Coulson, Richard Gold, et al. "Dynamic Reconfiguration in the RUNES Middleware," Mobile Ad-hocand Sensor Systems (MASS), International Conference on 2006 IEEE, pages 574-577, October 2006.

• Geoff Coulson, Dean Kue and John Brooke, "Sensor Networks + Grid Computing = A New Challenge forthe Grid?," IEEE Distributed Systems online, vol. 7, no. 12, page 2, December 2006.

• Richard Gold, "Contiki and the RUNES Middleware":http://www.sics.se/contiki/project/contiki-and-the-runes-middleware.html, February 2007.

Page 39: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200740

References (3)

• Patrick TH. Eugster, Pascal A. Felber, et al. "The Many Faces of Publish/Subscribe," ACM ComputingSurvays, vol. 35, no. 2, pages 114-131, June 2003.

• Paul Grace, Gordon S. Blair, et al. "ReMMoC: A Reflective Middleware to support Mobile ClientInteroperability," International Symposium on Distributed Objects and Application, Catania, Italy,November 2003 (to appear).

• Paul Grace, Gordon Blair, et al. "A Higher Level Abstraction for Mobile Computing Middleware," InProceeding of workshop on Communication Abstractions for Distributed Systems, Paris, France,November 2003.

• Paul Grace, Geoff Coulson, et al. "GRIDKIT: Pluggable Overlay Networks for Grid Computing," To appearin Proc. Distributed Objects and Applications (DOA'04), Cyprus, October 2004.

• Danny Hughes, Phil Greenwood, et al. "GridStix: Supporting Flood Prediction using Embedded Hardwareand Next Generation Grid Middleware," In Proceedings of the 4th International workshop on MobileDistributed Computing (MDC'06), Niagara Falls, USA, June 2006.

• Danny Hughes, Phil Greenwood, et al. "An Intelligent and Adaptable Flood Monitoring and WarningSystem," In Proceeding of the 5th UK E-science All Hands Meeting (AHM 06), September 2006.

Page 40: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200741

References (4)

• Danny Hughes, Phil Greenwood, et al. "Using Grid Technologies to Optimise a Wireless Sensor Networkfor Flood Management," In Proceedings of the 4th ACM Conference on Embedded Networked SensorSystems, Boulder, Colorado, USA, October 31-November 3, 2006.

• Zhang Huifu, Zhou Zude, et al. "Study on Embedded System Grid", In Proceedings of the FirstInternational Conference on Semantics, Knowledge, and Grid (SKG 2005), IEEE, 2006.

• Java Home Page: http://java.sun.com, 2007.• Fabrice Kordon, Laurent Pautet, "Toward Next-Generation Middleware?," IEEE Distributed Systems

Online, vol. 6, issue 3, March 2005.• Next Genaration Middleware @ Lancaster University:

http://www.comp.lancs.ac.uk/computing/research/mpg/reflection/index.php.• Next Genaration Middleware @ Lancaster University, Computing Department, "OpenCOM: Java versus

C++", Technical Report, http://www.comp.lancs.ac.uk/computing/research/mpg/reflection/tutorials.php.• Dong-Kyu Lee, Joo-Yong Oh, et al. "Middleware for Isochronous Connection Management in IEEE1394-

IEC61883 based Multimedia Home Network," IEEE Transactions on Consumer Electronics, vol. 51,issue 1, pages 307-313, February 2005.

• Cecilia Mascolo, Stefanos Zachariadis, et al. "RUNES Middleware Architecture", SIXTH FRAMEWORKPROGRAMME PRIORITY 2, Information Society Technology, Project Document Number:RUNES/D5.2.1/PU/v12 (official version), November 2005.

Page 41: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/200742

References (5)

• Microsoft, COM Home Page: http://www.microsoft.com/com/default.mspx, last updated: 2007.• Mozilla Organization, XPCOM Project: http://www.mozilla.org/projects/xpcom, last updated: September

2007.• Object Management Group: http://www.omg.org, last updated: October 2007.• Peter R. Pietzuch, "Event-Based Middleware: A New Paradigm for Wide-Area Distributed Systems?," In

Proceedings of 6th CaberNet Radicals workshop, Funchal, Maderia Island, Portugal, February 2002.• Steve Vinoski, "CORBA: Integrating Diverse Applications Within Distributed Heterogeneous

Environments," IEEE Communications Magazine, vol. 14, no.2, February 1997.• Klaus-Dieter Walter, "Embedded Grid Computing," In Elektronik, Fachzeitchrift fur industrielle Anwender

und Entwickler, Poing, Germany, page 76f, September 2005.• Wikipedia Encyclopedia: http://en.wikipedia.org.• Charles Zhang and Hans-Arno Jacobsen, "Refactoring Middleware with Aspects," IEEE Transactions on

Parallel and Distributed Systems, vol. 14, no. 11, November 2003.• Charles Zhang and Hans-Arno Jacobsen, "Resolving Feature Convolution in Middleware Systems," In

Proceedings of the 19th annual ACM SIGPLAN Conference on Object Oriented Programming,Systems, Languages and Applications, Vancover, BC, Canada, pages 188-205, 2004.

Page 42: The Evaluation of Adaptive Reflective Middlewares in ...ceit.aut.ac.ir/~pedram/newfiles/poorfard-powerpoint.pdf · "The RUNES Middleware for Networked Embedded Systems and its Application

21/10/2007