Understanding Code Mobility Sachin Chouksey H. Qiu Xiong Distributed Applications Problems with traditional approaches Technologies,architectures,methodologies. Large scale distributed settings. Fail to provide Configurability Scalability Customizability Code Mobility
Sachin Chouksey H. Qiu
BUT THESE DO NOT SCALE
1. Service Customization- The interfaces or services are are not statically defined.
2. Supporting more flexible software deployment and maintenance.
3. Automatic software upgrade without human interaction on the client side.
4. Autonomy of application components.
- heterogeneous communication infrastructure complexes the network and requires autonomic design.
Or put more operations on the clients
Put more operations on the server
5. The fault tolerance is much improved in Mobile code than the conventional client-server system.
6. A new protocol is needed to enhance the code migration among distributed systems.
7. Date management flexibility and protocol encapsulation.
Application Domains for Mobile Code
The network congestion traffic problem:
1. The problem to solve: Decentralizing Network Traffic
-Both SNMP and CMIP are inefficient while the network heavy congestion.
- Some modifications have been made to solve the problem, such as the SNMPv2 with the proxy agents and the Remote Monitoring.
2. Identifying the Design Paradigms
-REV paradigm can be used, which will pack up all the SNMP operations and send them on the device for the local interaction.
-Only the useful target value will be sent back after execution.
-The capability to retain the state across several hops will also make the whole system more autonomic.
3. Evaluating the Design Tradeoffs
(details will not be discussed)
-The mobile code is only convenient when a set of SNMP instructions can be “packed” efficiently into mobile code.
-The choice of the paradigm is constrained by the actual values for the parameters of the application.
Choosing the Implementation Technology
-In principle, design paradigms and implementation are orthogonal. Sometimes, they are different.
-We also have to think about the global application development when we implement a given functionality inside it.