DIANE Dynamic IoT Application Deployment
|
|
|
- Anna McKinney
- 10 years ago
- Views:
Transcription
1 2015 IEEE International Conference on Mobile Services DIANE Dynamic IoT Application Deployment Michael Vögler, Johannes M. Schleicher, Christian Inzinger, and Schahram Dustdar Distributed Systems Group, Vienna University of Technology, 1040 Vienna, Austria Abstract Applications in the Internet of Things (IoT) domain need to manage and integrate huge amounts of heterogenous devices. Usually these devices are treated as external dependencies residing at the edge of the infrastructure mainly transmitting sensed data or reacting to their environment. Recently however, a fundamental shift in the basic nature of these devices is taking place. More and more IoT devices emerge that are not simple sensors or transmitters, but provide limited execution environments. This opens up a huge opportunity to utilize these previously untapped processing power in order to offload custom application logic directly to these edge devices. To effectively exploit this new type of device the design of IoT applications needs to change to also consider devices that are deployed on the edge of the infrastructure. The deployment of parts of the application s business logic on the device will not only increase the overall robustness of the application, but can also reduce communication overhead. To allow for flexible provisioning of applications whose deployment topology evolves over time, a clear separation of independently executable application components is needed. In this paper, we present DIANE, a framework for the dynamic generation of optimized deployment topologies for IoT cloud applications that are tailored to the currently available physical infrastructure. Based on a declarative, constraint-based model of the desired application deployment, our approach enables flexible provisioning of application components on edge devices deployed in the field. DIANE supports different IoT application topologies and we show that our solution elastically provisions application deployment topologies using a cloud-based testbed. I. INTRODUCTION Current Internet of Things (IoT) applications need to manage and integrate an ever-increasing number of heterogeneous devices to sense and manipulate their environment. Increasingly, such devices do not only act as simple sensors or actors, but also provide constrained execution environments with limited processing, memory, and storage capabilities. In the context of our work, we refer to such devices as IoT gateways. By exploiting the functionality offered by IoT gateways, applications can offload parts of their business logic to the edge of the infrastructure to reduce communication overhead and increase application robustness [1]. Explicitly considering edge devices in IoT application design is especially important for applications deployed on cloud computing [2] infrastructure. The cloud provides access to virtually unlimited resources that can be programmatically provisioned with a pay-as-you-go pricing model, enabling applications to elastically adjust their deployment topology to match their current resource usage and according cost to the current request load. IoT cloud applications therefore must be designed to cope with issues arising from geographic distribution of edge devices, network latency and outages, as well as regulatory requirements, in addition to the traditional design considerations for cloud applications. Hence, edge devices must be treated as first-class citizens when designing IoT cloud applications and the traditional notion of resource elasticity [3] in cloud computing needs to be extended to include such heterogeneous IoT gateways deployed at the infrastructure edge, enabling interaction with the physical world. To allow for the flexible provisioning of applications whose deployment topology changes over time due to components being offloaded to IoT gateways, applications need to be composed of clearly separated components that can be independently deployed. The microservices architecture [4] recently emerged as a pragmatic implementation of the service-oriented architecture paradigm and provides a natural fit for creating such IoT cloud applications. We argue that future large-scale IoT systems will use this architectural style to cope with their inherent complexities and allow for seamless adaptation of their deployment topologies. Uptake of the microservice architecture will furthermore allow for the creation of IoT application markets (e.g., [5]) for practitioners to purchase and sell domain-specific application components. IoT gateways can be considered an extension of the available cloud infrastructure, but their constrained execution environment and the fact that they are deployed at customer premises to integrate and connect to local sensors and actors requires special consideration when provisioning application components on IoT gateways. By carefully deciding when to deploy certain application components on gateways or cloud infrastructure, IoT cloud applications can effectively manage the inherent cost-benefit trade-off of using edge infrastructure, leveraging cheap communication within edge infrastructure while minimizing expensive (and possibly slow or unreliable) communication to the cloud, while also considering processing, memory, and storage capabilities of available IoT gateways. It is important to note that changes in application deployment topologies will not only be triggered whenever a new application needs to be deployed, but can also be caused by environmental changes, such as changing customer request patterns, changes in the physical infrastructure at the edge (e.g., adding/removing sensors or gateways), or evolutionary changes in application business logic throughout its lifecycle. In this paper, we present DIANE, a framework for dynamically generating optimized deployment topologies for IoT cloud applications tailored to the available physical infrastructure. Using a declarative, constraint-based model of the desired application deployment, our approach enables flexible provisioning of application components on both, cloud infrastructure, as well as IoT gateways deployed in the field. The remainder of this paper is structured as follows: In Section II we introduce the DIANE framework to address the identified problems in dynamically creating application deployment topologies for large-scale IoT cloud systems. We provide a detailed evaluation in Section III, discuss relevant /15 $ IEEE DOI /MS
2 related research in Section IV, followed by a conclusion and an outlook on future research in Section V. II. APPROACH To address the previously defined requirements, we present DIANE, a framework for the dynamic generation of deployment topologies for IoT applications and application components, and the respective provisioning of these deployment topologies on edge devices in large-scale IoT deployments. The overall architecture of our approach is depicted in Figure 1 and consists of the following top-level components: (i) DIANE, and (ii) LEONORE. In the following, we describe these components in more detail and discuss the design and implementation of IoT applications. A. IoT Application In order to allow dynamic generation of deployment topologies for IoT applications in our framework, the design and implementation of such applications have to follow the micro services architecture approach [4]. This design approach enables developers to build flexible and scalable applications, whose components can be independently evolved and managed. Each component of an application is self-contained, can be run separately and uses loosely coupled communication for interacting with other components. Following this application design approach we are using the MADCAT [6] methodology to describe the overall application and it s components. In essence, MADCAT enables the structured creation of applications by addressing the complete application lifecycle, from architectural design to concrete deployment topologies provisioned and executed on actual infrastructure. For our approach we focus on Technical Units (TUs) and Deployment Units (DUs) to describe applications and their components. 1) Technical Unit (TU): Technical Units are used to describe application components by using both the abstract architectural concerns and concrete deployment artifacts to capture technology decisions, which depend on the actual implementation. Since there are usually multiple possible TUs available to realize a specific application component, MADCAT employs decision trees to assist developers of such applications in realizing TUs. An example of a TU can be seen in Listing 1. We are using the JSON-LD 1 format to store and transfer MADCAT units. { Listing 1: Technical Unit "@context": " "@type": "TechnicalUnit", "name": "BMS/Unit", "artifact-uri": "...", "language": "java", "build": { "assembly": {"file": "unit.jar"}, "steps": [{"step": 1, "tool": "maven", "cmd": " mvn clean install"}] }, "execute": [{"step": 1, "tool": "java", "cmd": " java "configuration": [{"key": "broker.url", "value": 1 } "dependencies": [{"name": "MGT", "technicalunit": {"name": "BMS/Management"}}], "constraints": {"type": "...","framework": "Spring Boot","runtime": "JRE 1.7","memory": "..."} Each TU starts with a context that specifies the structure of the information and a specific type. The name uniquely identifies the TU and should refer to the application name and the specific component the TU describes. The artifact-uri defines the repository that stores the application sources and artifacts. The language field describes the used programming language and an optional version. For creating a runnable executable build specifies an assembly that defines the location within the repository and the name of the executable. Furthermore build describes a list of steps that need to be executed to create the executable. Execute defines the necessary steps to run the executable. In addition to the execution steps, configuration stores a possible runtime configuration (e.g., environment variables) that is needed for execution. Since some of the configuration items might map to other application components, dependencies reference TUs of other application components. Finally, the TU includes relevant constraints provided by the developer to help users of the application to decide on a suitable deployment infrastructure. 2) Deployment Unit (DU): For each TU one or more deployment units (DUs) are created by an infrastructure provider or operations manager. A DU describes how the TU can be deployed on concrete infrastructure. In order to create a specific DU the provider uses the information contained in the TU and the knowledge about the owned infrastructure. Listing 2 shows an example DU created for the TU above. { } Listing 2: Deployment Unit "@context": " "@type": "DeploymentUnit", "name": "BMS/Unit", "technicalunits": [{"name": "BMS/Unit"}], "constraints": [{ "hardware": [{"type": "...", "os": "...", " capabilities": [{"name": "JRE", "version": "1.7"}], "memory": "..."}], "software": [{"replication": [{"min": "all"}]} ] }], "steps": [...] A DU has a context, type and name. Next, technicalunits reference the TUs that are deployed using this specific DU. Based on the information provided in the TU (e.g., constraints) the infrastructure provider defines constraints for hardware and software that are used to decide on suitable infrastructure resources for executing an application component. Finally, steps list the necessary deployment steps. 3) Deployment Instance (DI): Based on the TUs and corresponding DUs it is possible to completely describe an IoT application. Now, to finally provision an application deployment, the framework uses TUs, DUs and concrete infrastructure knowledge to generate deployment instances (DIs). 299
3 User API DIANE Deployment Handler Artifact Management Dependency Management Provisioner Deployment Generator Constraint Handler Service API Package Management LEONORE LEONORE node 1 IoT Gateway Management Device API Provisioning Handler Repository API Registry API Balancer Deployment Deployment Registry IoT Gateway 1_1 IoT Gateway 1_2 IoT Gateway 1_n Fig. 1: Framework Overview DIs represent concrete deployments on actual machines of the infrastructure, taking into consideration the defined software and hardware constraints. An example of a DI using the DU and TU from above can be seen in Listing 3. { } Listing 3: Deployment Instance "@context": " "@type": "DeploymentInstance", "name": "...", "machine": {"id": "...", "ip": "..."}, "application": {"name": "BMS/Unit", "version": "1. 0.0", "environment": [{"key": "broker.url", " value": "failover:tcp:// :61616"}] } A DI has a context, type and name. The machine field stores data about the concrete machine that is provisioned with an application component. Runtime information, needed for executing the application component, is represented in application. It contains the name and the version of the application component. Runtime configurations required by the component are resolved by the framework and represented in environment. B. DIANE Framework The enabling framework for generating IoT application deployment topologies and the provisioning of these deployments on edge devices in large-scale IoT deployments is depicted on the left hand side of Figure 1. DIANE is a scalable and flexible cloud-based framework and is developed following the micro services architecture design. In the following, we introduce the main components of DIANE, discuss the integration with LEONORE [1] for provisioning edge devices and discuss the concrete process of generating and provisioning application deployment topologies. 1) Deployment Registry: To keep track of deployments and their relation to TUs and DUs, the framework uses a Deployment Registry. The registry stores the units and deployments using a tree structure to represent the relations among them. By keeping track of TUs and DUs the framework can provide application deployment provisioning at a finer granularity. This means that it is possible with DIANE to provision an application deployment topology in one batch, but also provision each deployment separately. 2) Deployment Handler: To provision an IoT application deployment topology with DIANE the user of the framework has to invoke the User API and provide the following required information: (i) TUs, (ii) corresponding DUs, and (iii) optional artifacts that are needed by the deployment (e.g., executables) that can not be resolved automatically by the framework like private repositories that are not publicly accessible. Since the focus of our work is on generating and provisioning DIs, a user of the framework is responsible for creating the required MADCAT units and necessary application artifacts. The Deployment Handler is responsible for handling user interaction and finally triggers the provisioning of application deployments. 3) Artifact Management: In addition to the MADCAT units, the framework also needs corresponding application artifacts. The Artifact Management component receives the artifacts, resolves all references and creates an artifact package that gets transferred to LEONORE. Each package contains an executable, a version, and the commands to start and stop the artifact. 4) Deployment Generator: To generate DIs, the Deployment Generator resolves the dependencies among the provided TUs and DUs by using the Dependency Management component. The management component returns a tree structure to represent the dependencies among the units. Next, the generator deals with possible deployment constraints that are specified in the DUs by invoking the Constraint Handler. The handler returns a list of infrastructure resources that comply with the specified constraints. Before the actual generation of DIs, the generator needs to handle application runtime configurations (e.g., application properties) in the TUs. Therefore, the generator delegates the configuration resolving to the Constraint Handler and receives a temporary configuration. Finally, the generator 300
4 creates the actual DIs by mapping the DUs to concrete machines and updating possible links in the temporary configuration that correspond to infrastructure properties (e.g., IP address of a machine). 5) Dependency Management: Since MADCAT units reference each other, the Dependency Management is responsible for resolving unit dependencies. For representing the dependencies among the units the management component creates a tree structure. The process of dependency resolution first creates for each TU a new root node. After creating the root nodes it checks if a TU has a reference to another TU and if so creates a new leaf node linking to the respective root node. Next, it checks the provided DUs and adds them to the respective TU node as a leaf. In case a reference cannot be resolved based on the provided units, it queries the Deployment Registry. The final product of this process is a tree topology, where each root node represents a TU and the leaves are the corresponding DUs or a reference to another TU. 6) Constraint Handler: In order to provide a suitable deployment of application components on machines, DUs provide deployment constraints. In our approach we distinguish hardware and software constraints. Hardware constraints deal with actual infrastructure constraints e.g., operating system or the installed capabilities of a machine. Software constraints define requirements that correspond to the application component and its deployment e.g., should this component be replicated and if so on how many machines. To provide a list of suitable machines the handler retrieves a list of all known machines and their corresponding metadata from LEONORE. Then, based on the defined constraints in the DU, it filters out the ones that do not fit or not needed in case software constraints only demand for a certain amount of machines. 7) Provisioner: For actually provisioning the final DIs the Provisioner component is used. The component receives the generated DIs and the topology of TUs, DUs and their dependencies. The provisioner then traverses the topology and for each TU and DU combination, it deploys the corresponding DIs by invoking LEONORE, adds the DIs to the respective DU as leaf and updates the deployment registry. C. LEONORE LEONORE [1] is a service oriented infrastructure and toolset for provisioning application packages on edge devices in large-scale IoT deployments. LEONORE creates installable application packages, which are fully prepared on the provisioning server and specifically catered to the device platform to be provisioned. It allows for both, push- and pull-based provisioning of devices. For our approach we will facilitate and extend LEONORE to provision IoT application deployment topologies on edge devices managed and provisioned by LEONORE. A simplified architecture of LEONORE and connected IoT deployments is depicted on the right hand side of Figure 1. In the following we describe the most important components that are involved when provisioning an IoT application. 1) IoT Gateway: The IoT Gateway is a general and generic representation of an IoT device, which considers the resource constrained nature and limitations of these devices. The IoT gateway uses a container for executing application packages, a profiler to monitor the status of the system, an agent to communicate with LEONORE, and a connectivity layer that supports different communication protocols and provisioning strategies. 2) Service API: To allow for the seamless integration of DIANE with LEONORE we extended the provided APIs and created a general Service API. This interface allows: (i) to query LEONORE for currently managed devices and their corresponding metadata, (ii) to add additional application artifacts that are needed for building application packages, and (iii) to provision application deployment topologies represented as DIs. 3) Package Management: To provision application components along with the corresponding artifacts, DIANE adds these artifacts and additional metadata (e.g., name, version, executables) via the service API. The Package Management component stores the provided information along with the artifacts in a repository. 4) IoT Gateway Management: In order to keep track of connected IoT gateways, LEONORE uses the following approach: During gateway startup, the gateway s local provisioning agent registers the gateway with LEONORE by providing its device-specific information (e.g., id). The IoT Gateway Management handles this information by adding it to a repository and assigning a handler that is responsible for handling and provisioning the respective gateway. 5) Provisioning Handler: The Provisioning Handler is responsible for the actual provisioning of application packages. The handler decides on an appropriate provisioning strategy, triggers the building of gateway-specific packages and executes the provisioning strategy. Depending on the strategy the IoT gateway either queries the framework for packages or updates get automatically pushed to the gateway. 6) Balancer: Since LEONORE deals with large-scale IoT deployments that potentially create significant load, the framework scales by using so-called LEONORE nodes. These nodes comprise all components that are required for managing IoT gateways. To distribute the gateways evenly on available nodes a Balancer is used to assign gateways to available nodes that are then responsible for handling any further interaction with the respective IoT gateways. In case all available nodes are fully loaded, the balancer spins up a new node and queues incoming requests. Similarly, the balancer will decommission nodes when load decreases. D. Provisioning of IoT Application Deployment Topologies The overall process of provisioning IoT application deployment topologies is started when DIANE receives a request to deploy a specific IoT application or application package. The process comprises the following steps: (i) in order to generate the deployment topology of an application or application component with DIANE the user provides an optional list of artifacts and a mandatory list of MADCAT units (i.e., TUs and DUs). The deployment manager is then responsible for handling deployment requests and forwards the request to the artifact manager; (ii) the artifact manager resolves artifacts 301
5 according to the provided information in the TUs by either loading them from a specified repository or using the provided artifacts; (iii) after resolving the artifacts, the artifact manager transfers the artifacts to LEONORE by invoking the Service API; (iv) LEONORE receives the artifacts, packs and stores them in an internal repository; (v) for each TU and DU the deployment handler does the following: (vi) forward the list of TUs and DUs to the dependency management component to resolve dependencies and relations among the units; (vii) resolve possible infrastructure constraints defined in the DUs with the help of the constraint handler; (viii) the constraint handler gathers all managed machines and their corresponding context (e.g. IP, name, runtime) from LEONORE; (ix) according to the specified constraints the handler returns a list of machines that are applicable for deployment of a specific DU; (x) invoke the constraint handler again to generate runtime configurations that are specified in the TU; (xi) generate DIs using the gathered suitable machines and runtime configurations; (xii) for each DI the handler invokes the provisioner that stores the DI and corresponding DUs and TU in the deployment registry, deploys the DI by invoking the service API of LEONORE, which then takes care of provisioning the application deployment on the actual infrastructure. III. EVALUATION To evaluate our approach we implemented a sample IoT application based on a case study conducted in our lab in cooperation with a business partner in the building management domain. In this case study we identified the requirements and basic components of commonly applied applications in this domain. Based on this knowledge we developed an IoT application for managing and controlling air handling units in buildings, where the design and implementation follows the micro services architecture approach. Next, we created a test setup in the cloud using CoreOS 2 to virtualize edge devices as Docker 3 containers. We use LEONORE s notion of IoT gateways as representation of edge device in our experiments. In the remainder of this section we give an overview of the developed IoT application, the concrete evaluation setup, present different evaluation scenarios and analyze the gathered results. A. BMS - IoT Application Currently, applications in IoT are designed and implemented as layered architectures [7], where the bottom layer consists of deployed IoT devices, a middleware that provides a unified view of the deployed IoT infrastructure, and an application layer that executes the business logic [8]. According to this layering, business logic only runs in the application layer and the IoT infrastructure is provisioned with appropriate software, transmits data and reacts to received control information [9]. However, in practice most of the IoT devices provide constrained execution environments that can be used to offload parts of the business logic onto these devices. To compare these two deployment approaches we developed an application for a building management system that consists of the following components: (i) Air Handling Unit (unit) is deployed on an IoT device, reads data (e.g., temperature) from a sensor, transmits the data to and reacts on control commands received from the upper layer; (ii) Temperature Management (management) is the processing component of the application and gathers the status information of the units. It receives high level directives from the upper layer and based on the processed unit data and the received directives, forwards appropriate control commands to the unit; and (iii) Building Controller (control) is the top level component and decides for each handled management component the directive it has to execute. The basic deployment topology that follows the traditional IoT application deployment model is depicted in Figure 2a. In the figure we see that the unit component is deployed on devices in the IoT infrastructure and that both the processing (management) and control components are executed on a platform in the cloud. We refer to this deployment as traditional application topology. In contrast, Figure 2b depicts a deployment that offloads some of the processing (management) onto devices, which we refer to as evolved application topology. B. Setup DIANE LEONORE IoT Testbed DIANE Ubuntu-Host LEONORE Node Ubuntu-Host Controller Management Ubuntu-Host Balancer Ubuntu-Host BMS Platform BMS BMS CoreOS-Host CoreOS-Host Cloud Building Controller Cloud Building Controller Temperature Management IoT Infrastructure Gateway 1 Air Handling Unit Gateway 2 Air Handling Unit IoT Infrastructure Gateway 1 Temp. Management Air Handling Unit Gateway 2 Temp. Management Air Handling Unit CoreOS-Host CoreOS-Host CoreOS-Host (a) Application Topology (b) Application Topology Fig. 3: Evaluation - Setup Virtualized gateway (Docker container) Fig. 2: IoT Application Topology For the evaluation of our framework we created an IoT testbed in our private OpenStack 4 cloud. We reuse a Docker
6 Deployment Time: Top. vs Top. IoT Gateway - Utilization: Top. vs Top. Time (ms) #Avg. Time (ms) - #Median Time (ms) - #Avg. Time (ms) - #Median Time (ms) CPU (%) - CPU (%) - Memory (% ) - Memory (% ) #IoT Gateways Time (s) (a) Deployment Time (b) Device Utilization Execution - Bandwidth: Top. vs Top. Execution - Time: Top. vs Top. Bandwidth (KB) 2, , , Transmitted Data ( KB) - Transmitted Data ( KB) - Time (ms) #Avg. Time (ms) - #Median Time (ms) - #Avg. Time (ms) - #Median Time (ms) #IoT Gateways #Iot Gateways (c) Application Execution - Bandwidth (d) Application Execution - Time Fig. 4: Evaluation Results image that was created for LEONORE to virtualize and mimic a physical gateway in our cloud. To run several of these virtualized gateways, we use CoreOS clusters and fleet 5, a distributed init system, for handling these clusters. Based on fleet s service unit files, we dynamically generate according fleet unit files and use them to automatically create, run and stop virtualized gateways. Figure 3 depicts the overall setup that we use for our experiments. At the bottom, the IoT Testbed consists of a CoreOS cluster of 5 virtual machines, where each VM is based on CoreOS and uses the m1.medium flavor (3750MB RAM, 2 VCPUs and 40GB Disk space). The gateway-specific framework components of LEONORE are pre-installed in the containers. In the middle, the LEONORE framework is distributed over 2 VMs using Ubuntu The first VM hosts the balancer and uses the m1.medium flavor. The second VM hosts a LEONORE node and uses the m2.medium flavor (5760MB Ram, 3 VCPUs and 40GB Disk space). On top, DIANE is hosted in one VM using Ubuntu with the m1.medium flavor. The platform components of the BMS IoT application are deployed on a separate VM using Ubuntu and the m1.small flavor (1920MB Ram, 1 VCPUs and 40GB Disk space). In order to evaluate and compare both deployment topologies of the application, the BMS platform initially comprises controller and management (traditional application topology), and is then reduced to only host the controller, 5 since the management component is deployed on the devices (evolved application topology). In both scenarios the unit component is deployed and executed on the devices in the IoT infrastructure. C. IoT Application Deployment In the first experiment we measure the time that is needed for dynamically creating application deployments for the two BMS IoT application deployment topologies and provisioning of these deployments on IoT devices. In the second experiment we compare the device resource utilization when executing the provisioned application deployments. 1) Deployment Time: Figure 4a shows the overall time that is needed for the creation and provisioning of application deployments on an increasing number of devices. The time measurement begins when DIANE is invoked and ends when DIANE reports the successful deployment. To deal with possible outliers and provide more accurate information we executed each measurement 10 times and calculated both the average and median time. In Figure 4a we see that for the traditional application topology the framework provides a stable and acceptable overall deployment time. In comparison the deployment of the evolved application topology takes in total almost twice as long, but also provides a stable deployment time. Taking into account that the evolved application topology needs to deploy twice as many application components and corresponding artifacts, this increase is reasonable since the 303
7 limiting factor is the actual provisioning of devices as we create application packages that have more than doubled in size. 2) Gateway Resource Utilization: Figure 4b depicts the cpu and memory utilization of one device when provisioning and executing the two IoT application deployment topologies. The Figure shows that initially there is no application component running on the device. After 15 seconds we initiate the provisioning via our framework, which provisions the application deployments and starts the execution. Then the deployment runs for 30 seconds. Afterwards the framework stops the execution. When provisioning the traditional application topology, we clearly see that the cpu utilization has a short high peak due to the startup of the deployment. However, after this high peak the overall utilization of the device is low and would allow to use this untapped processing power to offload business logic components on the device. To illustrate the feasibility of this claim we also provision and execute the evolved application topology on the device. We see that in comparison to traditional application topology, the load on the device is almost twice as high, but except for the high initial cpu load peak, the overall utilization of the device is still acceptable and reasonable. D. IoT Application Execution In the second experiment we have an in-depth look at the BMS application and compare both deployment topologies. In order to do that, we deploy both topologies with our tool on an increasing number on devices. However, now we measure bandwidth consumption and execution time when invoking the application s business logic. The measurement begins by invoking the control component of the application to specify a virtual set-point temperature on each device, where each unit component on the device has the same initial temperature reading. To provide reliable results, we execute each measurement 10 times and freshly provision the devices after each measurement with our tool. Depending on the BMS application deployment topology the management component is either executed in the platform (i.e., the cloud) or on each device. 1) Bandwidth Consumption: Figure 4c shows the average bandwidth consumption that results from invoking the business logic of the two application deployment topologies. We see that the traditional application topology causes a significant amount of data transmission between platform and IoT infrastructure. As a result the transmitted data produces a high load on the network and consumes a lot of bandwidth. This behavior is obvious, since the complete business logic is executed on the platform and devices are only sending and reacting on control messages. In contrast, the evolved application topology produces less traffic and therefore consumes on average only 13% of the bandwidth. This is due to the offloading of the processing (management) component to each device, which therefore drastically reduces the transmitted data between platform and IoT infrastructure. 2) Execution Time: Figure 4d shows the time that is needed for executing the previously described business operation of the BMS application for the two application deployment topologies. We see that for both topologies the application scales well and provides reasonably fast results. However, we notice that the offloading of the processing components on devices reduces the execution time by 7%, since component interaction within a device is faster than the interaction between device and platform. After presenting and evaluating the gathered experiment results, we can deduce the following: DIANE, the framework for the dynamic creation of IoT application deployment topologies and actual provisioning of these, is capable of dealing with different application topologies and changes in the IoT infrastructure. The framework scales well with increasing size of application deployment topologies and does not add additional overhead to the overall time that is needed for provisioning the IoT infrastructure. Note that for very large deployments the use of multiple coordinated LEONORE nodes is required. Furthermore, depending on the scenario, it is feasible to offload application components from a cloud platform on devices in the IoT infrastructure. Examples of such scenarios are applications that generate a significant amount of traffic between the platform and the IoT infrastructure and therefore justify the additional deployment overhead. IV. RELATED WORK The overall terminology of the Internet of Things is welldefined in the literature [8], [9]. In contrast, the definition of applications in IoT comprises applications that are solely deployed in a platform in e.g., the cloud [10] and are executed on top of an resource abstraction layer [11], [12], [13], [14], and distributed applications, where basic components are embedded in devices that are deployed on the edge of the infrastructure for sensing and reacting on the environment and a corresponding enterprise application for managing these devices [15], [16]. The above approaches have in common that they see devices deployed in the IoT infrastructure as external dependencies and therefore do not consider them in the design and development as integral part of the application. Recently, approaches emerged that also consider IoT devices as part of the application that need to be managed efficiently in order to develop and deploy flexible and scalable IoT applications [17], [18], [19], [20], [21]. However, none of the approaches discussed so far, considers deploying and provisioning parts of the application on edge devices that provide constrained execution environments [22] in order to facilitate this untapped processing power and build more robust and adaptable applications. Regarding the deployment, there is only limited amount of prior work on location-aware placement of cloud application components [23], [24], [25], [26], [27], but these approaches are not designed to handle placement decisions for constrained edge infrastructure to improve application deployment topologies. V. CONCLUSION To sense and manipulate the environment, applications in the Internet of Things (IoT) need to manage and integrate a large number of heterogeneous devices for sensing and manipulating the environment. Recently, it emerges that such devices, apart from the most basic sensors and actuators, also provide limited execution environments that are constrained in their processing, memory and storage capabilities. In order to exploit this untapped processing power provided by these IoT devices, parts of an application s business logic can be 304
8 offloaded to the edge of the infrastructure, which not only increases the robustness of the application but can also reduce communication overhead. Especially for IoT applications deployed on cloud computing infrastructures the consideration of edge devices is important, since the cloud enables applications to react to the current request load by elastically adjusting their deployment topology. Therefore, in addition to the traditional design considerations for cloud applications, specific issues like the geographical distribution of edge devices and the resulting network latency need to be considered in the design of IoT cloud applications. Furthermore, applications need to be built from clearly separated components, which can be deployed independently, to allow for flexible provisioning of applications whose deployment topology evolves by offloading components to edge devices. This calls for an approach to dynamically generate optimized deployment topologies for IoT cloud applications, which are tailored to the currently available physical infrastructure. DIANE uses a declarative, constraintbased model of the desired application deployment, to enable the flexible provisioning of application components on both, cloud infrastructure, as well as IoT devices deployed in the IoT infrastructure. In our ongoing work, we plan to extend DIANE to address further challenges. We will integrate non functional elasticity dimensions (e.g., costs) to further optimize deployment topologies [3] and enable local coordination of topology changes between edge devices. Additionally, we plan to further adapt and extend the MADCAT unit methodology to allow for more detailed descriptions of application topologies. Furthermore, we will integrate our framework with our overall efforts in designing, deploying, and managing complex, large-scale IoT applications to provide a comprehensive tool set for researchers and practitioners. REFERENCES [1] M. Vögler, J. M. Schleicher, C. Inzinger, S. Nastic, S. Sehic, and S. Dustdar, LEONORE - Large-Scale Provisioning of Resource- Constrained IoT Deployments, in Proceedings of the 9th International Symposium on Service-Oriented System Engineering, ser. SOSE 15. IEEE, 2015, pp [2] M. Armbrust, I. Stoica, M. Zaharia, A. Fox, R. Griffith, A. D. Joseph, R. Katz, A. Konwinski, G. Lee, D. Patterson, and A. Rabkin, A view of cloud computing, Communications of the ACM, vol. 53, no. 4, pp , Apr [3] S. Dustdar, Y. Guo, R. Han, B. Satzger, and H.-L. Truong, Programming Directives for Elastic Computing, IEEE Internet Computing, vol. 16, no. 6, pp , [4] S. Newman, Building Microservices. O Reilly Media, Inc., Feb [5] M. Vögler, F. Li, M. Claeßens, J. M. Schleicher, S. Nastic, and S. Sehic, COLT Collaborative Delivery of lightweight IoT Applications, in Proceedings of the 2014 International Conference on IoT as a Service, ser. IoTaaS 14. Springer, 2014, p. to appear. [6] C. Inzinger, S. Nastic, S. Sehic, M. Vögler, F. Li, and S. Dustdar, MADCAT - A Methodology for Architecture and Deployment of Cloud Application Topologies, in Proceedings of the 8th International Symposium on Service-Oriented System Engineering, ser. SOSE 14. IEEE, 2014, pp [7] D. Agrawal, S. Das, and A. El Abbadi, Big data and cloud computing: new wine or just new bottles? Proceedings of the VLDB Endowment, vol. 3, no. 1-2, pp , Sep [8] S. Li, L. D. Xu, and S. Zhao, The internet of things: a survey, Information Systems Frontiers, pp. 1 17, Apr [9] L. Da Xu, W. He, and S. Li, Internet of Things in Industries: A Survey, IEEE Transactions on Industrial Informatics, vol. 10, no. 4, pp , [10] F. Li, M. Vögler, S. Sehic, S. Qanbari, S. Nastic, H.-L. truong, and S. Dustdar, Web-Scale Service Delivery for Smart Cities, Internet Computing, IEEE, vol. 17, no. 4, pp , [11] M. Kovatsch, Firm firmware and apps for the Internet of Things, in Proceedings of the 2nd Workshop on Software Engineering for Sensor Network Applications, ser. SESENA 11. ACM, 2011, pp [12] D. Guinard, I. Ion, and S. Mayer, In Search of an Internet of Things Service Architecture: REST or WS-*? A Developers Perspective, in Mobile and Ubiquitous Systems: Computing, Networking, and Services. Springer, 2012, vol. 104, pp [13] H. Ning and Z. Wang, Future Internet of Things Architecture: Like Mankind Neural System or Social Organization Framework? IEEE Communications Letters, vol. 15, no. 4, pp , [14] P. Patel, A. Pathak, T. Teixeira, and V. Issarny, Towards application development for the internet of things, in Proceedings of the 8th Middleware Doctoral Symposium, ser. MDS 11. ACM, 2011, pp. 5:1 5:6. [15] Q. Zhu, R. Wang, Q. Chen, Y. Liu, and W. Qin, IOT Gateway: Bridging Wireless Sensor Networks into Internet of Things, in Proceedings of the IEEE/IFIP 8th International Conference on Embedded and Ubiquitous Computing, ser. EUC 10, 2010, pp [16] W. Colitti, K. Steenhaut, N. De Caro, B. Buta, and V. Dobrota, REST Enabled Wireless Sensor Networks for Seamless Integration with Web Applications, in Proceedings of the 8th International Conference on Mobile Adhoc and Sensor Systems, ser. MASS 11. IEEE, 2011, pp [17] F. Li, M. Vögler, M. Claessens, and S. Dustdar, Towards Automated IoT Application Deployment by a Cloud-Based Approach, in Service- Oriented Computing and Applications (SOCA), 2013 IEEE 6th International Conference on, 2013, pp [18] S. Nastic, S. Sehic, M. Vögler, H. L. Truong, and S. Dustdar, PatRI- CIA ANovelProgramming Model for IoT Applications on Cloud Platforms, in Service-Oriented Computing and Applications (SOCA), 2013 IEEE 6th International Conference on, 2013, pp [19] R. Khan, S. U. Khan, R. Zaheer, and S. Khan, Future internet: The internet of things architecture, possible applications and key challenges, Proceedings - 10th International Conference on Frontiers of Information Technology, FIT 2012, pp , [20] J. a. Stankovic, Research Directions for the Internet of Things, Internet of Things Journal, IEEE, vol. 1, no. 1, pp. 3 9, [21] S. S. Yau and A. B. Buduru, Intelligent Planning for Developing Mobile IoT Applications Using Cloud Systems, in Mobile Services (MS), 2014 IEEE International Conference on, 2014, pp [22] A. Sehgal, V. Perelman, S. Kuryla, and J. Schonwalder, Management of resource constrained devices in the internet of things, Communications Magazine, IEEE, vol. 50, no. 12, pp , [23] I. Narayanan, A. Kansal, A. Sivasubramaniam, B. Urgaonkar, and S. Govindan, Towards a Leaner Geo-distributed Cloud Infrastructure, in Proceedings of the 6th USENIX Workshop on Hot Topics in Cloud Computing, ser. HotCloud 14. USENIX Association, [24] R. Buyya, R. N. Calheiros, and X. Li, Autonomic Cloud computing: Open challenges and architectural elements, in Proceedings of the Third International Conference on Emerging Applications of Information Technology, ser. EAIT 12, 2012, pp [25] P. Mayer, J. Velasco, A. Klarl, R. Hennicker, M. Puviani, F. Tiezzi, R. Pugliese, J. Keznikl, and T. Bureš, The Autonomic Cloud, in Software Engineering for Collective Autonomic Systems. Springer, 2015, pp [26] H. Qian and M. Rabinovich, Application Placement and Demand Distribution in a Global Elastic Cloud: A Unified Approach, in Proceedings of the 10th International Conference on Autonomic Computing, ser. ICAC 13. USENIX Association, 2013, pp [27] S. Radovanovic, N. Nemet, M. Cetkovic, M. Z. Bjelica, and N. Teslic, Cloud-based framework for QoS monitoring and provisioning in consumer devices, in Consumer Electronics?? Berlin (ICCE-Berlin), ICCEBerlin IEEE Third International Conference on, 2013, pp
JoramMQ, a distributed MQTT broker for the Internet of Things
JoramMQ, a distributed broker for the Internet of Things White paper and performance evaluation v1.2 September 214 mqtt.jorammq.com www.scalagent.com 1 1 Overview Message Queue Telemetry Transport () is
ISBN: 978-0-9891305-3-0 2013 SDIWC 1
Implementation of Novel Accounting, Pricing and Charging Models in a Cloud-based Service Provisioning Environment Peter Bigala and Obeten O. Ekabua Department of Computer Science North-West University,
Elasticity in Multitenant Databases Through Virtual Tenants
Elasticity in Multitenant Databases Through Virtual Tenants 1 Monika Jain, 2 Iti Sharma Career Point University, Kota, Rajasthan, India 1 [email protected], 2 [email protected] Abstract -
Geoprocessing in Hybrid Clouds
Geoprocessing in Hybrid Clouds Theodor Foerster, Bastian Baranski, Bastian Schäffer & Kristof Lange Institute for Geoinformatics, University of Münster, Germany {theodor.foerster; bastian.baranski;schaeffer;
New Cloud Computing Network Architecture Directed At Multimedia
2012 2 nd International Conference on Information Communication and Management (ICICM 2012) IPCSIT vol. 55 (2012) (2012) IACSIT Press, Singapore DOI: 10.7763/IPCSIT.2012.V55.16 New Cloud Computing Network
A Middleware Strategy to Survive Compute Peak Loads in Cloud
A Middleware Strategy to Survive Compute Peak Loads in Cloud Sasko Ristov Ss. Cyril and Methodius University Faculty of Information Sciences and Computer Engineering Skopje, Macedonia Email: [email protected]
CiteSeer x in the Cloud
Published in the 2nd USENIX Workshop on Hot Topics in Cloud Computing 2010 CiteSeer x in the Cloud Pradeep B. Teregowda Pennsylvania State University C. Lee Giles Pennsylvania State University Bhuvan Urgaonkar
BPM in Cloud Architectures: Business Process Management with SLAs and Events
BPM in Cloud Architectures: Business Process Management with SLAs and Events Vinod Muthusamy and Hans-Arno Jacobsen University of Toronto 1 Introduction Applications are becoming increasingly distributed
Monitoring Elastic Cloud Services
Monitoring Elastic Cloud Services [email protected] Advanced School on Service Oriented Computing (SummerSoc 2014) 30 June 5 July, Hersonissos, Crete, Greece Presentation Outline Elasticity in Cloud
Flexible Architecture for Internet of Things Utilizing an Local Manager
, pp.235-248 http://dx.doi.org/10.14257/ijfgcn.2014.7.1.24 Flexible Architecture for Internet of Things Utilizing an Local Manager Patrik Huss, Niklas Wigertz, Jingcheng Zhang, Allan Huynh, Qinzhong Ye
DRAFT. 1 Proposed System. 1.1 Abstract
Doctoral Thesis Proposal A language-level approach to distributed computation with weak synchronization and its application to cloud and edge computing environments. Christopher Meiklejohn Université catholique
Performance Analysis of VM Scheduling Algorithm of CloudSim in Cloud Computing
IJECT Vo l. 6, Is s u e 1, Sp l-1 Ja n - Ma r c h 2015 ISSN : 2230-7109 (Online) ISSN : 2230-9543 (Print) Performance Analysis Scheduling Algorithm CloudSim in Cloud Computing 1 Md. Ashifuddin Mondal,
How To Manage Cloud Service Provisioning And Maintenance
Managing Cloud Service Provisioning and SLA Enforcement via Holistic Monitoring Techniques Vincent C. Emeakaroha Matrikelnr: 0027525 [email protected] Supervisor: Univ.-Prof. Dr. Schahram Dustdar
Context Aware Mobile Network Marketing Services
Context-aware Mobile Multimedia Services in the Cloud Dejan Kovachev, Ralf Klamma Chair for Computer Science 5 (Information Systems), RWTH Aachen University Ahornstr. 55, D-52056, Aachen, Germany {kovachev,
Conceptual Approach for Performance Isolation in Multi-Tenant Systems
Conceptual Approach for Performance Isolation in Multi-Tenant Systems Manuel Loesch 1 and Rouven Krebs 2 1 FZI Research Center for Information Technology, Karlsruhe, Germany 2 SAP AG, Global Research and
Azure Scalability Prescriptive Architecture using the Enzo Multitenant Framework
Azure Scalability Prescriptive Architecture using the Enzo Multitenant Framework Many corporations and Independent Software Vendors considering cloud computing adoption face a similar challenge: how should
JOURNAL OF OBJECT TECHNOLOGY
JOURNAL OF OBJECT TECHNOLOGY Online at www.jot.fm. Published by ETH Zurich, Chair of Software Engineering JOT, 2008 Vol. 7 No. 7, September-October 2008 Applications At Your Service Mahesh H. Dodani, IBM,
OpenMTC. M2M Solutions for Smart Cities and the Internet of Things. www.open-mtc.org [email protected]
OpenMTC M2M Solutions for Smart Cities and the Internet of Things www.open-mtc.org [email protected] 2. March März 2, 2013 Understanding M2M Machine-to-Machine (M2M) is a paradigm in which the end-to-end
Figure 1. The cloud scales: Amazon EC2 growth [2].
- Chung-Cheng Li and Kuochen Wang Department of Computer Science National Chiao Tung University Hsinchu, Taiwan 300 [email protected], [email protected] Abstract One of the most important issues
Chapter 19 Cloud Computing for Multimedia Services
Chapter 19 Cloud Computing for Multimedia Services 19.1 Cloud Computing Overview 19.2 Multimedia Cloud Computing 19.3 Cloud-Assisted Media Sharing 19.4 Computation Offloading for Multimedia Services 19.5
A Proposed Case for the Cloud Software Engineering in Security
A Proposed Case for the Cloud Software Engineering in Security Victor Chang and Muthu Ramachandran School of Computing, Creative Technologies and Engineering, Leeds Metropolitan University, Headinley,
How can the Future Internet enable Smart Energy?
How can the Future Internet enable Smart Energy? FINSENY overview presentation on achieved results Prepared by the FINSENY PMT April 2013 Outline Motivation and basic requirements FI-PPP approach FINSENY
An Architecture Model of Sensor Information System Based on Cloud Computing
An Architecture Model of Sensor Information System Based on Cloud Computing Pengfei You, Yuxing Peng National Key Laboratory for Parallel and Distributed Processing, School of Computer Science, National
Supply Chain Platform as a Service: a Cloud Perspective on Business Collaboration
Supply Chain Platform as a Service: a Cloud Perspective on Business Collaboration Guopeng Zhao 1, 2 and Zhiqi Shen 1 1 Nanyang Technological University, Singapore 639798 2 HP Labs Singapore, Singapore
High performance computing network for cloud environment using simulators
High performance computing network for cloud environment using simulators Ajith Singh. N 1 and M. Hemalatha 2 1 Ph.D, Research Scholar (CS), Karpagam University, Coimbatore, India 2 Prof & Head, Department
THE CLOUD AND ITS EFFECTS ON WEB DEVELOPMENT
TREX WORKSHOP 2013 THE CLOUD AND ITS EFFECTS ON WEB DEVELOPMENT Jukka Tupamäki, Relevantum Oy Software Specialist, MSc in Software Engineering (TUT) [email protected] / @tukkajukka 30.10.2013 1 e arrival
IaaS Cloud Architectures: Virtualized Data Centers to Federated Cloud Infrastructures
IaaS Cloud Architectures: Virtualized Data Centers to Federated Cloud Infrastructures Dr. Sanjay P. Ahuja, Ph.D. 2010-14 FIS Distinguished Professor of Computer Science School of Computing, UNF Introduction
Vortex White Paper. Simplifying Real-time Information Integration in Industrial Internet of Things (IIoT) Control Systems
Vortex White Paper Simplifying Real-time Information Integration in Industrial Internet of Things (IIoT) Control Systems Version 1.0 February 2015 Andrew Foster, Product Marketing Manager, PrismTech Vortex
A Hybrid Load Balancing Policy underlying Cloud Computing Environment
A Hybrid Load Balancing Policy underlying Cloud Computing Environment S.C. WANG, S.C. TSENG, S.S. WANG*, K.Q. YAN* Chaoyang University of Technology 168, Jifeng E. Rd., Wufeng District, Taichung 41349
Building the Internet of Things Jim Green - CTO, Data & Analytics Business Group, Cisco Systems
Building the Internet of Things Jim Green - CTO, Data & Analytics Business Group, Cisco Systems Brian McCarson Sr. Principal Engineer & Sr. System Architect, Internet of Things Group, Intel Corp Mac Devine
An Efficient Checkpointing Scheme Using Price History of Spot Instances in Cloud Computing Environment
An Efficient Checkpointing Scheme Using Price History of Spot Instances in Cloud Computing Environment Daeyong Jung 1, SungHo Chin 1, KwangSik Chung 2, HeonChang Yu 1, JoonMin Gil 3 * 1 Dept. of Computer
Deploying a distributed data storage system on the UK National Grid Service using federated SRB
Deploying a distributed data storage system on the UK National Grid Service using federated SRB Manandhar A.S., Kleese K., Berrisford P., Brown G.D. CCLRC e-science Center Abstract As Grid enabled applications
A Survey Paper: Cloud Computing and Virtual Machine Migration
577 A Survey Paper: Cloud Computing and Virtual Machine Migration 1 Yatendra Sahu, 2 Neha Agrawal 1 UIT, RGPV, Bhopal MP 462036, INDIA 2 MANIT, Bhopal MP 462051, INDIA Abstract - Cloud computing is one
The Hidden Extras. The Pricing Scheme of Cloud Computing. Stephane Rufer
The Hidden Extras The Pricing Scheme of Cloud Computing Stephane Rufer Cloud Computing Hype Cycle Definition Types Architecture Deployment Pricing/Charging in IT Economics of Cloud Computing Pricing Schemes
This is an author-deposited version published in : http://oatao.univ-toulouse.fr/ Eprints ID : 12902
Open Archive TOULOUSE Archive Ouverte (OATAO) OATAO is an open access repository that collects the work of Toulouse researchers and makes it freely available over the web where possible. This is an author-deposited
CMotion: A Framework for Migration of Applications into and between Clouds
Institute of Architecture of Application Systems CMotion: A Framework for Migration of Applications into and between Clouds Tobias Binz, Frank Leymann, David Schumm Institute of Architecture of Application
Distribution transparency. Degree of transparency. Openness of distributed systems
Distributed Systems Principles and Paradigms Maarten van Steen VU Amsterdam, Dept. Computer Science [email protected] Chapter 01: Version: August 27, 2012 1 / 28 Distributed System: Definition A distributed
A Cloud Architecture for an Extensible Multi-Paradigm Modeling Environment
A Cloud Architecture for an Extensible Multi-Paradigm Modeling Environment Jonathan Corley 1 and Eugene Syriani 2 1 University of Alabama, U.S.A. 2 Université de Montréal, Canada Abstract. We present the
How To Understand Cloud Computing
Overview of Cloud Computing (ENCS 691K Chapter 1) Roch Glitho, PhD Associate Professor and Canada Research Chair My URL - http://users.encs.concordia.ca/~glitho/ Overview of Cloud Computing Towards a definition
Model-driven Performance Estimation, Deployment, and Resource Management for Cloud-hosted Services
Model-driven Performance Estimation, Deployment, and Resource Management for Cloud-hosted Services Faruk Caglar, Kyoungho An, Shashank Shekhar and Aniruddha Gokhale Vanderbilt University, ISIS and EECS
Amazon Cloud Storage Options
Amazon Cloud Storage Options Table of Contents 1. Overview of AWS Storage Options 02 2. Why you should use the AWS Storage 02 3. How to get Data into the AWS.03 4. Types of AWS Storage Options.03 5. Object
Cloud Computing for Control Systems CERN Openlab Summer Student Program 9/9/2011 ARSALAAN AHMED SHAIKH
Cloud Computing for Control Systems CERN Openlab Summer Student Program 9/9/2011 ARSALAAN AHMED SHAIKH CONTENTS Introduction... 4 System Components... 4 OpenNebula Cloud Management Toolkit... 4 VMware
PERFORMANCE ANALYSIS OF PaaS CLOUD COMPUTING SYSTEM
PERFORMANCE ANALYSIS OF PaaS CLOUD COMPUTING SYSTEM Akmal Basha 1 Krishna Sagar 2 1 PG Student,Department of Computer Science and Engineering, Madanapalle Institute of Technology & Science, India. 2 Associate
Load Balancing to Save Energy in Cloud Computing
presented at the Energy Efficient Systems Workshop at ICT4S, Stockholm, Aug. 2014 Load Balancing to Save Energy in Cloud Computing Theodore Pertsas University of Manchester United Kingdom [email protected]
A Systems of Systems. The Internet of Things. perspective on. Johan Lukkien. Eindhoven University
A Systems of Systems perspective on The Internet of Things Johan Lukkien Eindhoven University System applications platform In-vehicle network network Local Control Local Control Local Control Reservations,
Relational Databases in the Cloud
Contact Information: February 2011 zimory scale White Paper Relational Databases in the Cloud Target audience CIO/CTOs/Architects with medium to large IT installations looking to reduce IT costs by creating
Secure Attack Measure Selection and Intrusion Detection in Virtual Cloud Networks. Karnataka. www.ijreat.org
Secure Attack Measure Selection and Intrusion Detection in Virtual Cloud Networks Kruthika S G 1, VenkataRavana Nayak 2, Sunanda Allur 3 1, 2, 3 Department of Computer Science, Visvesvaraya Technological
Grid Computing Vs. Cloud Computing
International Journal of Information and Computation Technology. ISSN 0974-2239 Volume 3, Number 6 (2013), pp. 577-582 International Research Publications House http://www. irphouse.com /ijict.htm Grid
Deploying Business Virtual Appliances on Open Source Cloud Computing
International Journal of Computer Science and Telecommunications [Volume 3, Issue 4, April 2012] 26 ISSN 2047-3338 Deploying Business Virtual Appliances on Open Source Cloud Computing Tran Van Lang 1 and
Simplifying Storage Operations By David Strom (published 3.15 by VMware) Introduction
Simplifying Storage Operations By David Strom (published 3.15 by VMware) Introduction There are tectonic changes to storage technology that the IT industry hasn t seen for many years. Storage has been
A Review of Load Balancing Algorithms for Cloud Computing
www.ijecs.in International Journal Of Engineering And Computer Science ISSN:2319-7242 Volume - 3 Issue -9 September, 2014 Page No. 8297-8302 A Review of Load Balancing Algorithms for Cloud Computing Dr.G.N.K.Sureshbabu
A Paradigm Shift from Cloud to Fog Computing
A Paradigm Shift from Cloud to Fog Computing T.Venkat Narayana Rao *1, MD. Amer Khan *2, M.Maschendra *3,M.Kiran Kumar *4 Professor, CSE, Sreenidhi Institute of Science and Technology *1 Student, CSE,
Analysis of Service Broker Policies in Cloud Analyst Framework
Journal of The International Association of Advanced Technology and Science Analysis of Service Broker Policies in Cloud Analyst Framework Ashish Sankla G.B Pant Govt. Engineering College, Computer Science
Real-Time Analysis of CDN in an Academic Institute: A Simulation Study
Journal of Algorithms & Computational Technology Vol. 6 No. 3 483 Real-Time Analysis of CDN in an Academic Institute: A Simulation Study N. Ramachandran * and P. Sivaprakasam + *Indian Institute of Management
Cloud Storage Solution for WSN Based on Internet Innovation Union
Cloud Storage Solution for WSN Based on Internet Innovation Union Tongrang Fan 1, Xuan Zhang 1, Feng Gao 1 1 School of Information Science and Technology, Shijiazhuang Tiedao University, Shijiazhuang,
An Oracle White Paper October 2013. Oracle Data Integrator 12c New Features Overview
An Oracle White Paper October 2013 Oracle Data Integrator 12c Disclaimer This document is for informational purposes. It is not a commitment to deliver any material, code, or functionality, and should
Introduction to WebSphere Process Server and WebSphere Enterprise Service Bus
Introduction to WebSphere Process Server and WebSphere Enterprise Service Bus Course materials may not be reproduced in whole or in part without the prior written permission of IBM. 4.0.3 Unit objectives
A Survey Study on Monitoring Service for Grid
A Survey Study on Monitoring Service for Grid Erkang You [email protected] ABSTRACT Grid is a distributed system that integrates heterogeneous systems into a single transparent computer, aiming to provide
SLA-aware Resource Scheduling for Cloud Storage
SLA-aware Resource Scheduling for Cloud Storage Zhihao Yao Computer and Information Technology Purdue University West Lafayette, Indiana 47906 Email: [email protected] Ioannis Papapanagiotou Computer and
AN IMPLEMENTATION OF E- LEARNING SYSTEM IN PRIVATE CLOUD
AN IMPLEMENTATION OF E- LEARNING SYSTEM IN PRIVATE CLOUD M. Lawanya Shri 1, Dr. S. Subha 2 1 Assistant Professor,School of Information Technology and Engineering, Vellore Institute of Technology, Vellore-632014
Towards Smart and Intelligent SDN Controller
Towards Smart and Intelligent SDN Controller - Through the Generic, Extensible, and Elastic Time Series Data Repository (TSDR) YuLing Chen, Dell Inc. Rajesh Narayanan, Dell Inc. Sharon Aicler, Cisco Systems
The Virtualization Practice
The Virtualization Practice White Paper: Managing Applications in Docker Containers Bernd Harzog Analyst Virtualization and Cloud Performance Management October 2014 Abstract Docker has captured the attention
MODIFIED BITTORRENT PROTOCOL AND ITS APPLICATION IN CLOUD COMPUTING ENVIRONMENT
MODIFIED BITTORRENT PROTOCOL AND ITS APPLICATION IN CLOUD COMPUTING ENVIRONMENT Soumya V L 1 and Anirban Basu 2 1 Dept of CSE, East Point College of Engineering & Technology, Bangalore, Karnataka, India
Security & Privacy Issues in Mobile Cloud Computing
Security & Privacy Issues in Mobile Cloud Computing Manmohan Chaturvedi,1, Sapna Malik, Preeti Aggarwal and Shilpa Bahl Ansal University, Gurgaon- 122011, India 1 [email protected] Indian
APPLICATION NOTE. Elastic Scalability. for HetNet Deployment, Management & Optimization
APPLICATION NOTE Elastic Scalability for HetNet Deployment, Management & Optimization Introduction Most industry reports indicate that the HetNet market is poised for explosive growth in the coming years.
IBM Bluemix. The Digital Innovation Platform. Simon Moser ([email protected]) @mosersd
IBM Bluemix The Digital Innovation Platform Simon Moser ([email protected]) @mosersd Who am I? - Senior Technical Staff Member at IBM Research & Development Lab in Böblingen, Germany - Bluemix Application
Cloud Database Storage Model by Using Key-as-a-Service (KaaS)
www.ijecs.in International Journal Of Engineering And Computer Science ISSN:2319-7242 Volume 4 Issue 7 July 2015, Page No. 13284-13288 Cloud Database Storage Model by Using Key-as-a-Service (KaaS) J.Sivaiah
Stratusphere Solutions
Stratusphere Solutions Deployment Best Practices Guide Introduction This guide has been authored by experts at Liquidware Labs in order to provide a baseline as well as recommendations for a best practices
Delivering Managed Services Using Next Generation Branch Architectures
Delivering Managed Services Using Next Generation Branch Architectures By: Lee Doyle, Principal Analyst at Doyle Research Sponsored by Versa Networks Executive Summary Network architectures for the WAN
An Efficient Cost Calculation Mechanism for Cloud and Non Cloud Computing Environment in Java
2012 International Conference on Computer Technology and Science (ICCTS 2012) IPCSIT vol. 47 (2012) (2012) IACSIT Press, Singapore DOI: 10.7763/IPCSIT.2012.V47.31 An Efficient Cost Calculation Mechanism
IoT is a King, Big data is a Queen and Cloud is a Palace
IoT is a King, Big data is a Queen and Cloud is a Palace Abdur Rahim Innotec21 GmbH, Germany Create-Net, Italy Acknowledgements- ikaas Partners (KDDI and other partnes) Intelligent Knowledge-as-a-Service
Software-Defined Networking Architecture Framework for Multi-Tenant Enterprise Cloud Environments
Software-Defined Networking Architecture Framework for Multi-Tenant Enterprise Cloud Environments Aryan TaheriMonfared Department of Electrical Engineering and Computer Science University of Stavanger
C2C: An Automated Deployment Framework for Distributed Applications on Multi-Clouds
C2C: An Automated Deployment Framework for Distributed Applications on Multi-Clouds Flora Karniavoura, Antonis Papaioannou, and Kostas Magoutis Institute of Computer Science (ICS) Foundation for Research
Solving I/O Bottlenecks to Enable Superior Cloud Efficiency
WHITE PAPER Solving I/O Bottlenecks to Enable Superior Cloud Efficiency Overview...1 Mellanox I/O Virtualization Features and Benefits...2 Summary...6 Overview We already have 8 or even 16 cores on one
Cloud Computing Simulation Using CloudSim
Cloud Computing Simulation Using CloudSim Ranjan Kumar #1, G.Sahoo *2 # Assistant Professor, Computer Science & Engineering, Ranchi University, India Professor & Head, Information Technology, Birla Institute
Two-Level Cooperation in Autonomic Cloud Resource Management
Two-Level Cooperation in Autonomic Cloud Resource Management Giang Son Tran, Laurent Broto, and Daniel Hagimont ENSEEIHT University of Toulouse, Toulouse, France Email: {giang.tran, laurent.broto, daniel.hagimont}@enseeiht.fr
Efficient Cloud Management for Parallel Data Processing In Private Cloud
2012 International Conference on Information and Network Technology (ICINT 2012) IPCSIT vol. 37 (2012) (2012) IACSIT Press, Singapore Efficient Cloud Management for Parallel Data Processing In Private
What can DDS do for You? Learn how dynamic publish-subscribe messaging can improve the flexibility and scalability of your applications.
What can DDS do for You? Learn how dynamic publish-subscribe messaging can improve the flexibility and scalability of your applications. 2 Contents: Abstract 3 What does DDS do 3 The Strengths of DDS 4
Beyond the Internet? THIN APPS STORE FOR SMART PHONES BASED ON PRIVATE CLOUD INFRASTRUCTURE. Innovations for future networks and services
Beyond the Internet? Innovations for future networks and services THIN APPS STORE FOR SMART PHONES BASED ON PRIVATE CLOUD INFRASTRUCTURE Authors Muzahid Hussain, Abhishek Tayal Ashish Tanwer, Parminder
Keywords: Cloudsim, MIPS, Gridlet, Virtual machine, Data center, Simulation, SaaS, PaaS, IaaS, VM. Introduction
Vol. 3 Issue 1, January-2014, pp: (1-5), Impact Factor: 1.252, Available online at: www.erpublications.com Performance evaluation of cloud application with constant data center configuration and variable
An Approach Towards Customized Multi- Tenancy
I.J.Modern Education and Computer Science, 2012, 9, 39-44 Published Online September 2012 in MECS (http://www.mecs-press.org/) DOI: 10.5815/ijmecs.2012.09.05 An Approach Towards Customized Multi- Tenancy
CloudSim: A Novel Framework for Modeling and Simulation of Cloud Computing Infrastructures and Services
CloudSim: A Novel Framework for Modeling and Simulation of Cloud Computing Infrastructures and Services Rodrigo N. Calheiros 1,2, Rajiv Ranjan 1, César A. F. De Rose 2, and Rajkumar Buyya 1 1 Grid Computing
PLUMgrid Toolbox: Tools to Install, Operate and Monitor Your Virtual Network Infrastructure
Toolbox: Tools to Install, Operate and Monitor Your Virtual Network Infrastructure Introduction The concept of Virtual Networking Infrastructure (VNI) is disrupting the networking space and is enabling
Stream Processing on GPUs Using Distributed Multimedia Middleware
Stream Processing on GPUs Using Distributed Multimedia Middleware Michael Repplinger 1,2, and Philipp Slusallek 1,2 1 Computer Graphics Lab, Saarland University, Saarbrücken, Germany 2 German Research
