International Journal of Scientific and Research Publications, Volume 2, Issue 6, June 2012 1 ISSN 2250-3153 www.ijsrp.org Migration of Mobicents SIP Servlets on Cloud Platform Mr. Manish Giri, Sachin Waghmare, Balaji Bandhu, Akshay Sawwashere, Atul Khaire Department of Computer Engineering, Maharashtra Academy of Engineering, Alandi, Pune, India Abstract- Mobicents Sip Servlets helps the users to create, deploy, and manage services and applications that integrate voice, video and data in real time over IP networks. These applications require high resources to run. Mobicents Sip Servlets has not offered a cloud support yet. Running Mobicents Sip Servlets in a cloud would allow the users to adapt the resources used by Mobicents Sip Servlets to the real time load of the applications. We have proposed a solution to migrate Mobicents Sip Servlets on a cloud platform. Our solution provides a set of cloud images that support the Mobicents Sip Servlets platform. Besides, our solution provides an auto-scaling algorithm that automatically scales the number of instances of Mobicents Sip Servlets. It is now possible to deploy SIP applications in a cloud and the platform will adapt its resource according to the need. Index Terms- Cloud Computing, SIP servlet, JBOSS AS, Cloud images. I. INTRODUCTION obicents Sip Servlets is an application server which runs on top of JBoss AS and which provides an Implementation of the SIP Servlet specification. The purpose of this platform is to help the users to create, deploy, and manage services and applications that integrate voice, video and data in real time over IP networks. Because of the large amount of data the applications must process, they require high resources to run. Most vendors of application servers now offer an Amazon image in order to use their products on a cloud. Indeed, a cloud can provide the high resources needed by the applications since it is easy to add or remove some resource allocated to the application in a cloud. Mobicents Sip Servlets has not offered a cloud support yet. In order to offer a cloud support, Mobicents Sip Servlets should offer cloud images that would contain the Mobicents Sip Servlets platform. Besides offering these images, another problem arises in cloud environment. This problem is how to scale the number of instances of these images according to the real time load. A cloud platform needs an entity which control the resources usage and which can allocate more or less resources depending on the load. This document will study the migration of Mobicents Sip Servlets on a cloud platform. We will provide cloud images that will contain the Mobicents Sip Servlets platform. Besides, we will propose a solution to scale up and down the resources used by the cloud. II. CLOUD 2. Cloud Architecture Cloud computing is a client-server approach where the server is a network of nodes. The job of the server is distributed among several nodes that form a cloud. Some nodes can be dynamically added or removed at runtime to the cloud .Depending on the cloud, the client may either send its request to any node in the cloud, or it may send its request to a load balancer, which will act as an entry-point for the cloud and forward the request to a node. Where, a node is an instance of a virtual machine. Thus a node is also called an instance. The virtual machines are executed on a set of inter-connected physical machines. The set of physical machines is called a cluster. There are three types of cloud service models. 2.1.1 IaaS If the user uses an IaaS, she is basically gaining a computer. The user has access to a virtual machine. She can decide which OS and software install on it. Then, she can use it as any server. An example of IaaS provider is Amazon Web Services. 2.1.2 PaaS If the user uses a PaaS, she is gaining software or a framework. A PaaS is a hosted tool that the user can leverage to build something on. An example of PaaS is Google AppEngine. With AppEngine, the user can run her web apps on Google's infrastructure. AppEngine provides the hardware, the OS and the framework. All she has to provide is her application. Then, the clients can access her application. 2.1.3SaaS If the user uses a SaaS, she is gaining business functionality. Basically, a SaaS is an software the user uses, but that is installed on a provider's hardware. For example, all web applications are SaaS. The user uses the software, but she has not had something to install. 2.2 Cloud Properties Cloud has two main properties: pay per use and elasticity. 2.2.1 Elasticity The user can scale resources usage up and down rapidly. In the IaaS cloud model, this means that it is possible to start new instances or stop existing instances rapidly. The newly created instances must be used by the cloud in order to decrease the load of the other instances. 2.2.2 Pay per use The user only pays for the resources that she actually uses. The IaaS cloud providers usually charge an instance on an hourly basis. M