Using  a Lifecycle Model for Adaptable Interactive Distributed Applications D. Meiländer , S. Gorlatch, C. Cappiello, V. M...
ROIA: New Class of Interactive Distributed Apps <ul><li>Real-Time Online Interactive Applications (ROIA) , e.g.  online ga...
Service-Oriented System Engineering for ROIA <ul><li>To meet these requirements ROIA use service-oriented architectures fo...
The S-Cube Lifecycle Model <ul><li>Two coexisting cycles support each other during application lifetime </li></ul><ul><ul>...
Case Study Architecture: Actors <ul><li>Multi-layered software system </li></ul><ul><ul><li>Real-time adaptation, resource...
Case Study Architecture: Services <ul><li>Monitoring service  receives application-specific monitoring information </li></...
The Real-Time Framework (RTF) <ul><li>RTF simplifies ROIA development by providing: </li></ul><ul><ul><li>High-level API f...
Adaptation Strategies in RTF <ul><li>Zoning:   disjoint areas, each zone assigned to one application server </li></ul><ul>...
ROIA Development in S-Cube Lifecycle <ul><li>Adaptation triggers: </li></ul><ul><li>QoS (e.g., < 25 updates/s) </li></ul><...
Mapping: Adaptation Triggers    Adaptation Strategy 10 / 14 Adaptation trigger Monitored variable Adaptation trigger rule...
State of implementation <ul><li>Multiple sample applications: </li></ul><ul><ul><li>Porting existing apps to Grid & Cloud ...
Experimental Results <ul><li>Evaluation of derived adaptation strategies </li></ul><ul><li>Experimental setup: </li></ul><...
Summary and Future Work <ul><li>Summary </li></ul><ul><li>Generic engineering methodologies for adaptable ROIA </li></ul><...
 
Upcoming SlideShare
Loading in …5
×

D. Meiländer, S. Gorlatch, C. Cappiello, V. Mazza, R. Kazhamiakin, and A. Bucchiarone: Using a Lifecycle Model for Adaptable Interactive Distributed Applications

801 views

Published on

D. Meiländer, S. Gorlatch, C. Cappiello, V. Mazza, R. Kazhamiakin, and A. Bucchiarone: Using a Lifecycle Model for Adaptable Interactive Distributed Applications

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
801
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • (c) Prof. Dr. Klaus Pohl
  • (c) Prof. Dr. Klaus Pohl
  • (c) Prof. Dr. Klaus Pohl
  • Figure: Without RTF the developer must implement application logic and he must also manually implement mechanisms for distribution management, network communication, monitoring and controlling. Using RTF he must only implement the application logic because RTF handles all the other tasks for him (c) Prof. Dr. Klaus Pohl
  • (c) Prof. Dr. Klaus Pohl
  • (c) Prof. Dr. Klaus Pohl
  • (c) Prof. Dr. Klaus Pohl
  • D. Meiländer, S. Gorlatch, C. Cappiello, V. Mazza, R. Kazhamiakin, and A. Bucchiarone: Using a Lifecycle Model for Adaptable Interactive Distributed Applications

    1. 1. Using a Lifecycle Model for Adaptable Interactive Distributed Applications D. Meiländer , S. Gorlatch, C. Cappiello, V. Mazza, R. Kazhamiakin, and A. Bucchiarone University of Muenster, Germany Politecnico di Milano, Italy Fondazione Bruno Kessler, Trentino, Italy ServiceWave 2010 13-15 December 2010
    2. 2. ROIA: New Class of Interactive Distributed Apps <ul><li>Real-Time Online Interactive Applications (ROIA) , e.g. online games or interactive e-learning, are large-scale Internet apps characterized by: </li></ul><ul><li>Huge number of concurrent users in a single application instance (e.g., more than 40.000 simultaneous participants in Eve Online) </li></ul><ul><li>Very high update rate of the app state (5-100 updates/sec) </li></ul><ul><li>Short response time to user actions (< 100 ms) </li></ul><ul><li>Tolerating high-latency and low-bandwidth Internet connections </li></ul><ul><li>Variable user load, daytime-dependent </li></ul> / 15
    3. 3. Service-Oriented System Engineering for ROIA <ul><li>To meet these requirements ROIA use service-oriented architectures for adaptation </li></ul><ul><li>Challenge: ROIA must adapt to changing environments (e.g., to address new user privileges, prevent fraudulent behaviour, etc.) </li></ul><ul><li>Goal: Devise generic engineering methodologies for adaptable ROIA </li></ul><ul><ul><li>For developers : design principles for adaptable ROIA </li></ul></ul><ul><ul><li>For service providers : transparent, autonomous & proactive adaptation at runtime </li></ul></ul><ul><li>Our previous work: </li></ul><ul><ul><li>Lifecycle Model for service-oriented apps from the European NoE S-Cube </li></ul></ul><ul><ul><li>Service-oriented architecture for ROIA from the European project [email_address] </li></ul></ul><ul><ul><ul><li>in particular distribution methods realized by the Real-Time Framework (RTF) </li></ul></ul></ul><ul><li>This talk: Applying the S-Cube Lifecycle Model to the edutain@grid architecture </li></ul><ul><ul><li>Develop suitable adaptation mechanisms and design patterns for ROIA </li></ul></ul>3 / 14
    4. 4. The S-Cube Lifecycle Model <ul><li>Two coexisting cycles support each other during application lifetime </li></ul><ul><ul><li>Evolution: Design-time iteration cycle, explicit re-design of the application to address new requirements (e.g., changing user preferences, Cheating, etc.) </li></ul></ul><ul><ul><li>Adaptation: Runtime cycle addressing adaptation </li></ul></ul>4 / 14
    5. 5. Case Study Architecture: Actors <ul><li>Multi-layered software system </li></ul><ul><ul><li>Real-time adaptation, resource management and scheduling </li></ul></ul><ul><li>Two main actors (gray) interacting with our service-oriented architecture </li></ul><ul><ul><li>End-user accesses a ROIA session through a (graphical) client </li></ul></ul><ul><ul><li>Hoster provides a computational & network infrastructure for ROIA sessions </li></ul></ul>
    6. 6. Case Study Architecture: Services <ul><li>Monitoring service receives application-specific monitoring information </li></ul><ul><li>Steering service identifies unexpected adaptation needs (using monitoring service) & finds suitable adaptation strategy </li></ul><ul><li>Resource allocation service allocates hoster resources to clients (depending on the load of resources) </li></ul><ul><li>Capacity management service identifies adaptation needs proactively (e.g., using load prediction) & finds suitable adaptation strategy </li></ul><ul><li>-> Adaptation triggered by Steering and Capacity management service </li></ul>
    7. 7. The Real-Time Framework (RTF) <ul><li>RTF simplifies ROIA development by providing: </li></ul><ul><ul><li>High-level API for scalable ROIA on multiple servers (Grid or Cloud) </li></ul></ul><ul><ul><li>A variety of distribution & parallelization techniques </li></ul></ul><ul><ul><li>Monitoring of application-specific parameters (e.g., updates/s) </li></ul></ul><ul><ul><li>Improving QoS by adding resources during runtime transparently for consumers </li></ul></ul>7 / 14 Clients Clients
    8. 8. Adaptation Strategies in RTF <ul><li>Zoning: disjoint areas, each zone assigned to one application server </li></ul><ul><li>Instancing: independently processed copies of subareas, each copy assigned to one application server </li></ul><ul><li>Replication: single zone processed by multiple application servers </li></ul><ul><li>User migration: client connection is switched seamlessly between two application servers replicating the same zone </li></ul><ul><li>QoS negotiation: includes (i) re-negotiation of existing contracts, (ii) negotiation of contracts with new hosters </li></ul>8 / 14
    9. 9. ROIA Development in S-Cube Lifecycle <ul><li>Adaptation triggers: </li></ul><ul><li>QoS (e.g., < 25 updates/s) </li></ul><ul><li>Computational context (e.g., server CPU load > 95 %) </li></ul><ul><li>Business context (e.g., new users) </li></ul><ul><li>Prediction (e.g., additional users) </li></ul><ul><li>Implement distribution and parallelization (using RTF) </li></ul><ul><li>Implement adaptation triggers on basis of RTF monitoring </li></ul><ul><li>Consider </li></ul><ul><li>priority of adaptation, </li></ul><ul><li>free resources, </li></ul><ul><li>etc. </li></ul>RTF distribution & parallelization techniques Introduce monitoring parameters and adaptation strategies Monitor adaptation triggers Identify application requirements (short response time, high update rate, proactive adaptation, etc.) Initial SLA negotiation with hosters 9 / 14
    10. 10. Mapping: Adaptation Triggers  Adaptation Strategy 10 / 14 Adaptation trigger Monitored variable Adaptation trigger rule Adaptation strategy Change in QoS Update rate, throughput, resource usage, latency update rate < 25 updates/s user migration, replication or instancing Change in comput. context CPU and memory load, incoming / outgoing bandwidth CPU load > 90% user migration, replication or instancing Change in business context # concurrent users, # requests per app # concurrent users >  user capability of app servers user migration, replication or instancing Prediction values number of users/hour, number of requests per application predicted users > current users +  (threshold) QoS negotiation, replication or instancing/zoning
    11. 11. State of implementation <ul><li>Multiple sample applications: </li></ul><ul><ul><li>Porting existing apps to Grid & Cloud </li></ul></ul><ul><ul><li>Quake 3 </li></ul></ul><ul><ul><li>High-performance simulations </li></ul></ul><ul><ul><li>PVS-Crowdsim </li></ul></ul><ul><ul><li>Interactive e-learning and training </li></ul></ul><ul><ul><li>edutain@grid Virtual Classroom </li></ul></ul><ul><ul><li>New gaming applications (MMORPG, massively multiplayer action games) </li></ul></ul><ul><ul><li>Hunter, RTFDemo, Bioclysm, Offshore </li></ul></ul>
    12. 12.
    13. 13. Experimental Results <ul><li>Evaluation of derived adaptation strategies </li></ul><ul><li>Experimental setup: </li></ul><ul><ul><li>Fast-paced 3D action game (25 updates/s) </li></ul></ul><ul><ul><li>Clients are simulated by bots moving randomly & shooting at opponents if in sight </li></ul></ul><ul><ul><li>Used Hardware: 2.66GHz C2D, 4 GB </li></ul></ul><ul><li>Zoning scales almost linearly </li></ul><ul><ul><li>1 Server: 450 clients </li></ul></ul><ul><ul><li>4 Server: > 1500 clients </li></ul></ul><ul><li>Replication allows to increase player density considerably </li></ul><ul><ul><li>4 Server: 1000 clients in a single zone </li></ul></ul><ul><li>Result: Scalability when using RTF </li></ul>Zoning Replication
    14. 14. Summary and Future Work <ul><li>Summary </li></ul><ul><li>Generic engineering methodologies for adaptable ROIA </li></ul><ul><ul><li>For developers: Design-time requirements for ROIA </li></ul></ul><ul><ul><li>For service providers: Transparent adaptation triggers & strategies for ROIA </li></ul></ul><ul><ul><li>-> Lifecycle Model supports development of high-quality, scalable ROIA </li></ul></ul><ul><li>Runtime experiments show the effectiveness of adaptation strategies implemented by RTF </li></ul><ul><li>Future Work </li></ul><ul><li>Implementation of adaptation triggers identified in our case study </li></ul><ul><li>Developing design patterns for identified adaptation scenarios </li></ul><ul><li>Demonstrate the effect of design decisions on performance & interdependence of various adaptation strategies </li></ul><ul><li>Implementation of our case study on Cloud systems </li></ul>13 / 14

    ×