Tata AIG General Insurance Company - Insurer Innovation Award 2024
Implementing Dynamic Process Migration mechanism for WSO2 Stratos
1. Implementing Dynamic Process
Migration mechanism for WSO2 Stratos
Dharshana Kasun Warusavitharana
128233A
Department of Computer science and Engineering
University of Moratuwa.
dkasunw@gmail.com
Supervisors
Mr. Afkham Azeez
Director Of Architecture, WSO2 inc.
azeez@wso2.com
Srinath Perera, Ph.D.
Senior Software Architect, WSO2 Inc.
srinath@wso2.com
2. Problem Identification
● What is WSO2 Stratos
○ Is a PaaS offers WSO2 platform as A service.
● What is Dynamic Process Migration
● Why Stratos needs Dynamic process migration
○ Dynamic load distribution.
○ Fair distribution of load.
○ Avoid nodes being idle.
○ Increase fault resilience.
Dharshana Warusavitharana 128233A
Implementing Dynamic Process Migration mechanism for WSO2 Stratos
Mr Afkham Azeez and Dr Srinath Perera
3. Dynamic Process Migration Scenario
Dynamic Process migration do
● process of transferring an active process
and restoring the process from the point it
left off
● Become dynamic while it is not visible to the
users.
● Achieved Tuning the Load Balancer
We can achieve
Dharshana Warusavitharana 128233A
Implementing Dynamic Process Migration mechanism for WSO2 Stratos
Mr Afkham Azeez and Dr Srinath Perera
● Load balancing
● Dynamic load
distribution
● Fault tolerance
● Reliability
● Concurrency
● Availability
4. Relevant Literature
● Dynamic Process Migration
● Selecting Algorithm
● Load Balancing
● Load indexing
● Process migration checkpointing and
indexing
Dharshana Warusavitharana 128233A
Implementing Dynamic Process Migration mechanism for WSO2 Stratos
Mr Afkham Azeez and Dr Srinath Perera
5. Dynamic Process Migration
The research paper [5][6] provides a good overall picture of
the process migration in linux environment
What applicable to me
● Detail items to be considered (List of goals to be achieved).
● Process checkpointing and load calculation.
● A practical implementation of the Dynamic Process Migration ( Yahoo).
What Deviates from my requirement
● I'm not working with linux kernel level threads.
● My requirement is to form a replicated node identical process running in
same state.
● By monitoring states and the resources used by original process.
Dharshana Warusavitharana 128233A
Implementing Dynamic Process Migration mechanism for WSO2 Stratos
Mr Afkham Azeez and Dr Srinath Perera
6. Selecting Algorithm
The Paper [11] describes about available types of process
migration mechanisms mainly focusing on operating
systems
● Types of Process migration algorithms.
● Their Nature
The Paper [10] describes about how the migration cost to
be calculate
● What are the states of the process needs to
consider.
● What is the state the algorithm should attend to
migrate
Dharshana Warusavitharana 128233A
Implementing Dynamic Process Migration mechanism for WSO2 Stratos
Mr Afkham Azeez and Dr Srinath Perera
7. Load Balancing
Load Balancing with process migration should
cover many aspects
● The paper[11] shows the role of the load balancer.
● What are the operations should handle.
● Key aspects we can follow.
●
There is separate Tenant aware load balance available on
[1] which contains many aspects but needs to improve to
cater the scenario.
Dharshana Warusavitharana 128233A
Implementing Dynamic Process Migration mechanism for WSO2 Stratos
Mr Afkham Azeez and Dr Srinath Perera
8. Migration Cost Calculation
The Paper [10] describes about how the migration cost to
be calculate
● What are the states of the process needs to consider.
● What is the state the algorithm should attend to migrate
The migration is separated into three phases
● Data collection
● Data transmission
● Data restoration
Dharshana Warusavitharana 128233A
Implementing Dynamic Process Migration mechanism for WSO2 Stratos
Mr Afkham Azeez and Dr Srinath Perera
9. Checkpointing
Checkpointing is a necessary step in monitoring
migrating process and taking fault tolerance precautions.
● A scenarios discussing on the paper [4] where load
can make idle node to a failure.
● And how to solve the issue using Checkpointing &
Rollback Recovery (CRR) and Process Migration on
paper[10].
the paper [13] Checkpointing can be implemented at
three levels
• Kernel-level Checkpointing
• User-level Checkpointing
• Application-level Checkpointing
Dharshana Warusavitharana 128233A
Implementing Dynamic Process Migration mechanism for WSO2 Stratos
Mr Afkham Azeez and Dr Srinath Perera
10. Proposed Methodology
Process Monitor – Do
indexing , Scheduling and
monitoring the internal
process and update load
balance and process monitor.
Migration Monitor- Calculate
the migration cost and notify
decision engine.
Load Balance – Do load
balancing encapsulating the
migration.
Dharshana Warusavitharana 128233A
Implementing Dynamic Process Migration mechanism for WSO2 Stratos
Mr Afkham Azeez and Dr Srinath Perera
11. Reference :
[1] “WSO2 Tenant Aware Load balancer | WSO2 Oxygen Tank.” [Online]. Available:
http://wso2.org/library/articles/2012/05/tenant-aware-load-balancer?
utm_medium=twitterutm_source=twitterfeed. [Accessed: 13-Jan-2013].
[2] P. Fremantle, S. Perera, A. Azeez, S. Jayasoma, S. Rubasinghe, R. Linton, S.
Weerawarana, and S. Abeysinghe, “Carbon: towards a server building framework
for SOA platform,” in Proceedings of the 5th International Workshop on Middleware
for Service Oriented Computing, 2010, pp. 7–12.
[3] “Azeez’s Notes: WSO2 Stratos - Deployment Architecture.” [Online]. Available:
http://blog.afkham.org/2010/06/wso2-stratos-deployment-architecture.html.
[Accessed: 13-Jan- 2013].
[4] Afkham Azeez, Srinath Perera, Sanjiva Weerawarana, Paul Fremantle,
Selvaratnam Uthaiyashankar, Samisa Abesinghe, “WSO2 Stratos: An Application
Stack to Support Cloud Computing.”
[5] N. Vasudevan and P. Venkatesh, “Design and Implementation of a Process
Migration System for the Linux Environment,” in 3rd International Conference on
Neural, Parallel and Scientific Computations, 2006.
[6] J. M. Smith, “A survey of process migration mechanisms,” ACM SIGOPS
Operating Systems Review, vol. 22, no. 3, pp. 28–40, 1988.
12. [7] D. S. Milojivcić, F. Douglis, Y. Paindaveine, R. Wheeler, and S. Zhou,
“Process migration,” ACM Computing Surveys (CSUR), vol. 32, no. 3, pp. 241–
299, 2000.
[8] C. S. Rao, M. Naidu, K. Subbaiah, and N. R. Reddy, “Process migration in
network of linux systems,” Int. J. Comput. Sci. Network Security, vol. 7, pp.
213–219, 2007.
[9] Ellard T. Roush and Roy H. Cambell, “Fast dynamic process migration,” in
Distributed Computing Systems, 1996.
[10 C. Du, X. H. Sun, and M. Wu, “Dynamic scheduling with process migration,”
in Cluster Computing and the Grid, 2007. CCGRID 2007. Seventh IEEE
International Symposium on,2007, pp. 92–99.
[11] R. Lawrence, “A survey of process migration mechanisms,” Dept. of CS,
Univ. of Manitoba, May, vol. 29, 1998.
[12] V. Shah and V. Kapadia, “Load Balancing by Process Migration in
Distributed Operating System,” International Journal of Soft Computing, vol. 2.
[13] C. S. Rao, M. Naidu, K. Subbaiah, and N. R. Reddy, “Process migration in
network of linux systems,” Int. J. Comput. Sci. Network Security, vol. 7, pp.
213–219, 2007.
[14] R. F. Yeshayahu Artsy, “Designing a process migration facility: The
Charlotte experience.”