Ali Kanso

dblp:54/5327 · DBLP profile ↗
← Back
24ranked-venue papers
7as first author
4since 2021 · last 2024
—ORCID · conflict

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 6 · 2 first-author · 3 since 2021Applied, interdisciplinary, general and emerging computing · 5 · 2 first-author · 2 since 2021Computer networks · 3Security and privacy · 3 · 3 first-authorArtificial intelligence and machine learning · 2 · 1 first-author · 2 since 2021Systems, architecture and hardware · 1 · 1 first-authorHuman-computer interaction and ubiquitous computing · 1 · 1 since 2021
YearPublicationVenuePosition
2024 Manipulability analysis to improve the performance of a 7-DoF serial manipulator *
abstract
Redundant robots offer significant potential for optimization strategies aimed at enhancing their performance. This paper conducts a kinematic analysis of a 7-DoF manipulator, the KUKA LBR iiwa, addressing the inverse kinematic problem and discussing a method for optimizing the robot configuration to improve the manipulability of the robot and therefore increase the accuracy of the estimated force based on measurements from the joint-integrated torque sensors. Furthermore, the condition number of the Jacobian matrix is introduced as a performance index within the context of this work. Finally, the results are validated through a sensitive robot application, where the accuracy of the estimated force serves as a performance indicator for the manipulator.
Ali Kanso, Marco Schneider, Attique Bashir, Rainer Müller
CoDIT1
2022 Engineering a platform for reinforcement learning workloads
abstract
Reinforcement Learning (RL) is an area of machine learning concerned with teaching intelligent agents to take desired actions in a specific environment. The teaching part can be performed in a simulated environment where the agent can learn how to react to the (simulated) current state in order to reach a desired state. Offering Reinforcement Learning as a service with stringent reliability and scalability requirements, entails a set of challenges at both the architectural and implementation level. In this paper we present the Bonsai platform for RL workloads. We discuss the requirements, design and implementation of the Bonsai platform.
Ali Kanso, Kinshuman Patra
CAIN1
2022 Multi-perspective human robot interaction through an augmented video interface supported by deep learning
abstract
As the world surpasses a billion cameras [1] and their coverage of the public and private spaces increases, the possibility of using their visual feed to not just observe, but to command robots through their video becomes an ever more interesting prospect. Our work deals with multi-perspective interaction, where a robot autonomously maps image pixels from reachable cameras to positions on its global coordinate space. This enables an operator to send the robot to specific positions in a camera with no manual calibration. Furthermore, robot information, such as planned paths, can be used to augment all affected camera images with an overlayed projection of their visual information. The robustness of this approach has been validated in both simulated and real world experiments.
Grimaldo Silva, Khansa Rekik, Ali Kanso, Leizer Schnitman
RO-MAN3
2021 Evaluating High Availability-Aware Deployments Using Stochastic Petri Net Model and Cloud Scoring Selection Tool
abstract
Different challenges are facing the adoption of cloud-based applications, including high availability (HA), energy, and other performance demands. Therefore, an integrated solution that addresses these issues is critical for cloud services. Cloud providers promise the HA of their infrastructure while cloud tenants are encouraged to deploy their applications across multiple availability zones. Moreover, the environmental and cost impacts of running applications in the cloud are integral parts of incorporated responsibility where the cloud providers and tenants intend to reduce. Hence, an analytical stochastic model is needed for the tenants and providers to quantify the expected availability offered by an application deployment. If multiple deployment options can satisfy the HA requirement, the question remains, how can we choose the deployment that satisfies the other providers and tenants requirements? Therefore, this paper proposes a cloud scoring system and integrates it with a Stochastic Petri Net model. While the Petri Net model evaluates the availability of cloud applications deployments, the scoring system selects the optimal HA-aware deployment in terms of energy, operational expenditure, and other norms. We illustrate our approach with a use case that shows how we can use the various deployment options to satisfy both the cloud tenant and provider needs.
Manar Jammal, Ali Kanso, Parisa Heidari, Abdallah Shami
IEEE Trans. Serv. Comput.2
2019 Generic input template for cloud simulators: A case study of CloudSim
abstract
Summary Cloud computing and its service models, such as Platform as a Service (PaaS), have changed the way that computing resources are allocated to Information and Communications Technology enterprises and users. Although multiple cloud providers support dynamic service provisioning, it is necessary to facilitate the management of the cloud infrastructure and applications in order to allow the continuous refinement of cloud models. Therefore, issues are raised regarding the cloud orchestration, including the flexible portability and interoperability of cloud applications among multiple cloud providers. Having said that, there is a need for a standardized design and management of the cloud use cases (during the creation of scenarios, application's deployment, and patching) to ensure efficient applications' migration between different providers. This paper proposes an artifact, GITS, a generic input template for CloudSim and other cloud simulators. GITS can be provided by PaaS offering to manage the creation, monitoring, administration, and patching of infrastructure and applications in the cloud. GITS defines the cloud schema that can be used with conforming cloud models and independent cloud providers; thus, portability and interoperability can be enabled in PaaS cloud models. GITS focuses on the architecture‐based modeling for cloud infrastructure and application not only in terms of computational resources but also in terms of high availability properties associated with infrastructure and applications. The main objective of the GITS template is to provide the cloud user with a modular, simple, readable, and reusable model that still supports the essential components and provide them with the ability to control the applications' execution, deployment, and other management needs in addition to the allocation environment. This paper describes GITS usage, specifically as an input template for CloudSim.
Manar Jammal, Hassan Hawilo, Ali Kanso, Abdallah Shami
Softw. Pract. Exp.3
2018 ACE: Availability-Aware CloudSim Extension
abstract
In the interconnected globe where service delivery is the success measure, cloud high availability (HA) is an indispensable area for enterprises. An HA-aware cloud system provides different approaches to handle the outages. This includes geo-redundancy, failover schemes, and HA-aware placement solutions. However, using real-cloud platforms to model HA-aware approaches is hindered by the configuration settings. To this end, simulation tools, such as CloudSim, can be used to evaluate HA solutions and a cloud resiliency against failures. CloudSim allows implementing of scheduling policies, but it does not support HA properties. This paper provides availability-aware CloudSim extension (ACE). ACE extends CloudSim with a graphical and textual modeling to ensure simplicity and reusability of cloud scenarios. ACE has added HA-aware modeling (HA metrics and failure/redundancy/interdependency models) and HA-aware scheduling (HA-aware placements, failover, repair, and load balancing policies) into CloudSim. With ACE, the creation of cloud scenarios is facilitated, and multiple HA-aware deployment solutions can be evaluated under different stochastic and deterministic events. ACE can assess the impact of different redundancy/failure models, and other performance policies to extract HA-aware lessons. In this paper, ACE is assessed on a cloud application to evaluate different redundancy/failure models and provide availability analysis of the HA-aware placement solution.
Manar Jammal, Hassan Hawilo, Ali Kanso, Abdallah Shami
IEEE Trans. Netw. Serv. Manag.3
2017 Comparing Scaling Methods for Linux Containers
abstract
Linux containers are shaping the new era of building applications. With their low resource utilization overhead and lightweight images, they present an appealing model to package and run applications. The faster boot time of containers compared to virtual/physical machines makes them ideal for auto-scaling and on-demand provisioning. Several methods can be used to spawn new containers. In this paper we compare three different methods in terms of start time, resource consumption and post-start performance. We discuss the applicability, advantages and shortcomings of each method, and conclude with our recommendations.
Shripad Nadgowda, Sahil Suneja, Ali Kanso
IC2E3
2016 QoS Assurance through Low Level Analysis of Resource Utilization of the Cloud Applications
abstract
Cloud computing offers the ability to use compute, network, and storage resources on demand in a virtualized environment. By virtualizing the physical infrastructure, the resources can be dimensioned at a finer grain allowing multiple tenants to share the same infrastructure while each uses its own share. Yet the question remains, how can we ensure that the resources we allocate to a given software application are enough to guarantee that it provides its functionality according to its service level agreement (SLA). The SLA can constrain the expected availability as well as the speed of handling requests. In this paper, first we define a model to profile the software application and the resources. Then, based on this model we derive a method to determine the needed resources to satisfy the SLA constraints. Our method is based on the low level analysis of resource utilization during the software component life cycle.
Parisa Heidari, Ali Kanso
CLOUD2
2016 Mitigating the Risk of Cloud Services Downtime Using Live Migration and High Availability-Aware Placement
abstract
The growing dependency of users on social media, telecommunication services, mobile applications, banking amenities, and other cloud services requires a plan that mitigates inevitable failures and ensures the always-on access to these services. This emanates high availability (HA) concerns regarding the adoption of cloud. To maintain HA, the cloud provider and/or user should design a system that is immune to both application and infrastructure failures. This paper proposes live migration approach to maintain service delivery upon a sudden failure, a virtual machine (VM)/infrastructure overload, or maintenance. It develops a mixed integer linear programming model that minimizes the migration downtime based on the VM memory pages and the optimal HA-aware placement of the VM. It also provides different design considerations to achieve HA-aware applications placement. The proposed placement is used in the migration approach to find new hosts for the VMs. It considers VMs/applications deployments in geographically distributed data centers and satisfies redundancy, applications interdependency, and other HA and performance requirements. Then the deployments are assessed using a formal Petri Net model to improve them in terms of HA. The HA-aware placement and migration approaches are evaluated on 3-tier Web applications.
Manar Jammal, Hassan Hawilo, Ali Kanso, Abdallah Shami
CloudCom3
2016 Availability Analysis of Cloud Deployed Applications
abstract
High availability (HA) is a main key performance indicator for cloud deployed services. Cloud providers offer different availability zones possibly located in different geographical regions. To protect cloud services against failures and natural disasters, it is recommended to deploy the applications on redundant resources across multiple zones and distribute the workload through a load-balancer. Different cloud infrastructure, located in different geographical zones with different energy source powering, hardware quality, etc., may have different reliability levels. Scheduling a cloud service on different zones while meeting the service level agreement availability requirements necessitate a solution to assess the expected availability of a given deployment. To quantify the expected availability offered by an application deployment, a formal stochastic model is required to capture the stochastic behavior of failures. This paper proposes a stochastic Petri Net model that captures the stochastic characteristics of cloud services and translates them into elements of an availability model. The model evaluates the availability of cloud services and their deployments in geographically distributed data centers (DCs). The results are useful to generate guidelines for an HA-aware scheduling.
Manar Jammal, Ali Kanso, Parisa Heidari, Abdallah Shami
IC2E2
2016 Building a cloud on earth: A study of cloud computing data center simulators
Mohamed Abu Sharkh, Ali Kanso, Abdallah Shami, Peter Ohlen
Comput. Networks2
2015 CHASE: Component High Availability-Aware Scheduler in Cloud Computing Environment
abstract
Cloud computing promises flexible integration of the compute capabilities for on-demand access through the concept of virtualization. However, uncertainties are raised regarding the high availability of the cloud-hosted applications. High availability is a crucial requirement for multi-tier applications providing business services for a broad range of enterprises. This paper proposes a novel component high availability-aware scheduling technique, CHASE, which maximizes the availability of applications without violating service level agreements with the end-users. Using CHASE, prior criticality analysis is conducted on applications to schedule them based on their impact on their execution environment and business functionality. This paper presents the advantages and shortcomings of CHASE compared to an optimal solution, Open Stack Nova scheduler, high availability-agnostic, and redundancy-agnostic schedulers. The evaluation results demonstrate that the proposed solution improves the availability of the scheduled components compared to the latter schedulers. CHASE prototype is also defined for runtime scheduling in Open Stack environment.
Manar Jammal, Ali Kanso, Abdallah Shami
CLOUD2
2015 Simulating High Availability Scenarios in Cloud Data Centers: A Closer Look
abstract
Migrating to the cloud is becoming a necessity for the majority of businesses. Cloud tenants require certain levels of performance in aspects like high availability and service rate and deployment options. On the other hand, Cloud providers are in constant pursuit of a system that satisfies client demands for resources, maximizes availability, minimizes power consumption and, in turn, minimizes the cloud providers' cost. A main challenge cloud providers face here is ensuring high availability (HA). High availability includes the combined reliability of components of all categories including network, computational, hardware and software components of all layers. In this work, we first address the need for a cloud simulator that enables HA algorithm testing in cloud environments and observe its impact on energy efficiency. We introduce a framework to amend cloud simulators with critical HA features. We take GreenCloud, a major simulator with a direct focus on green computing, and implement these features as an additional measurement layer. We demonstrate these added features by simulating their impact on a phased communication application (PCA).
Mohamed Abu Sharkh, Abdallah Shami, Peter Ohlen, Abdelkader H. Ouda, Ali Kanso
CloudCom5
2015 Comparing Containers versus Virtual Machines for Achieving High Availability
abstract
In recent decades, virtualization as an abstraction from physical hardware has become a popular solution to resource isolation and server consolidation. With the surge in adoption of virtualization technologies, ensuring High Availability (HA) for applications hosted in virtualized environments emerges as an important problem and has garnered substantial attention. In this paper, we present a brief comparison of virtualization technologies from a HA perspective. The state-of-the-art HA solutions in two mainstream types of virtualized platforms (i.e., hypervisor-based platform and container-based platform) are respectively investigated in terms of limitations and features such as live migration, failure detection, and checkpoint/ restore. One of our key findings is that, compared with hypervisor-based platforms, HA features in container-based platforms are far from enough. From a HA perspective, extensions on top of container technologies are required.
Wubin Li, Ali Kanso
IC2E2
2015 Leveraging Linux Containers to Achieve High Availability for Cloud Services
abstract
In this work, we present a novel approach that leverages Linux containers to achieve High Availability (HA) for cloud applications. A middleware that is comprised of a set of HA agents is defined to compensate the limitations of Linux containers in achieving HA. In our approach we start modeling at the application level, considering the dependencies among application components. We generate the proper scheduling scheme and then deploy the application across containers in the cloud. For each container that hosts critical component(s), we continuously monitor its status and checkpoint its full state, and then react to its failure by restarting locally or failing over to another host where we resume the computing from the most recent state. By using this strategy, all components hosted in a container are preserved without intrusively imposing modification on the application side. Finally, the feasibility of our approach is verified by building a proof-of-concept prototype and a case study of a video streaming application.
Wubin Li, Ali Kanso, Abdelouahed Gherbi
IC2E2
2015 High availability-aware optimization digest for applications deployment in cloud
abstract
Cloud computing is continuously growing as a business model for hosting information and communication technology applications. Although on-demand resource consumption and faster deployment time make this model appealing for the enterprise, other concerns arise regarding the quality of service offered by the cloud. One major concern is the high availability of applications hosted in the cloud. This paper demonstrates the tremendous effect that the placement strategy for virtual machines hosting applications has on the high availability of the services provided by these applications. In addition, a novel scheduling technique is presented that takes into consideration the interdependencies between applications components and other constraints such as communication delay tolerance and resource utilization. The problem is formulated as a linear programming multi-constraint optimization model. The evaluation results demonstrate that the proposed solution improves the availability of the scheduled components compared to OpenStack Nova scheduler.
Manar Jammal, Ali Kanso, Abdallah Shami
ICC2
2015 Towards an Elasticity Framework for Legacy Highly Available Applications in the Cloud
abstract
Elasticity is a key characteristic of cloud computing where the provisioning of resources can be directly proportional to the runtime demand. Legacy highly available applications typically rely on the underlying platform to manage their availability by monitoring heartbeats, executing recoveries, and attempting repairs to bring the system back to normal. Migrating such applications to the cloud can be particularly challenging, especially if the elasticity policies target the application only, without considering the underlying platform contributing to its high availability (HA). In this paper, we present a comprehensive framework for the elasticity of highly available applications that considers the elastic deployment of the platform and the HA placement of the application's components. We apply our approach to an IP multimedia subsystem (IMS) application and demonstrate how, within a matter of seconds, the IMS application can be scaled up while maintaining its HA status.
Hassan Hawilo, Ali Kanso, Abdallah Shami
SERVICES2
2014 A tool chain for generating the description files of highly available software
abstract
Service availability is a key non-functional requirement that system architects and integrators seek to achieve. High Availability (HA) can be attained using a dedicated distributed HA middleware that can manage clustered redundant resources to maintain the continuous service delivery even in the presence of failures. Nonetheless, employing such middleware based solutions requires deep knowledge of the domain and substantial configuration effort, which can be a tedious and error prone task. In this paper, we demonstrate an automated approach that mitigates the efforts of configuring HA systems, and allows non-domain experts to easily use specialized HA solutions to increase the reliability of the services provided by their systems.
Maxime Turenne, Ali Kanso, Abdelouahed Gherbi, Samer Razzook
ASE2
2013 Achieving High Availability at the Application Level in the Cloud
abstract
Cloud computing is an emerging paradigm that is gaining more attention by the day. Even with the increased number of applications that are being deployed in the Cloud, the question remains, is the Cloud ready to host applications adhering to telecommunication-grade requirements? In this paper we target the issue of the high-availability (HA) requirement in the Cloud from an application perspective. We present an approach that enables the dynamic incorporation of HA features into the deployed applications, which raises the discussion about the feasibility of having HA-as-a-Service, per application, in the Cloud.
Ali Kanso, Yves Lemieux
IEEE CLOUD1
2013 Automatic configuration generation for service high availability with load balancing
abstract
SUMMARY The need for highly available services is ever increasing in various domains ranging from mission‐critical systems to transaction‐based ones such as banking. The Service Availability Forum has defined a set of services and related API specifications to address the growing need of commercial off‐the‐shelf high availability solutions. Among these services, the availability management framework (AMF) is the service responsible for managing the high availability of the application services by coordinating redundant application components deployed on the AMF cluster. To achieve this task, an AMF implementation requires a specific logical view of the organization of the application's services and components, known as an AMF configuration. Developing manually such a configuration is a complex error‐prone task that requires extensive domain knowledge. In this paper, we present an approach for the automatic generation of AMF configurations and alleviate the task of configuration designers. One important aspect of the AMF configuration is ranking the service units, when it is required by the redundancy model, for the assignment of the workload by AMF at runtime. Our approach includes a technique for generating these rankings in such a way that guarantees load balancing even after the occurrence of a failure. Copyright © 2012 John Wiley & Sons, Ltd.
Ali Kanso, Ferhat Khendek, Maria Toeroe, Abdelwahab Hamou-Lhadj
Concurr. Comput. Pract. Exp.1
2011 Workload Balancing for Highly Available Services: The Case of the N+M Redundancy Model
abstract
In today's information based world the demand on highly available services is ever increasing. Fault tolerant systems are capable of providing the expected services even in the presence of a failure. This is achieved through the redundancy of the service providers, where service assignments i.e. workloads are shifted to redundant healthy service providers when a failure occurs. The assignment and the shift are performed according to a redundancy model. A well-known redundancy model is the N+M where we have N active service providers and M standbys. In case of a failure of an active provider, the services are reassigned to its standbys. Maintaining a balanced workload before and after a failure in the N+M redundancy is a challenging task. Especially when the solution is decided at configuration time, and no runtime information is available. This is exactly the issue we tackle in this paper. We present three different approaches aiming at solving this problem with different priorities of the relevant constraints. Our solutions do not require any runtime information and can maintain a balanced workload even after a failure by anticipating the workload redistribution.
Ali Kanso, Ferhat Khendek, Maria Toeroe
DASC1
2011 Automatic Annotation of Software Configuration Models with Service Recovery Information
abstract
Highly available services are nowadays provided by large and complex systems built from Commercial-Of-The-Shelf (COTS) components. Such systems are deployed on top of standardized middleware services that manage service availability by monitoring the component health and by dynamically shifting workload from a faulty component to a healthy one. This management is achieved through the usage of a configuration model. Characterizing the availability of such systems before deployment is an important question. Indeed, components may be characterized with a failure rate, but this information does not translate directly to service failure/outage which is the first step towards service availability evaluation. In this paper, we propose an approach to derive from the component failure rates the recovery duration and service outage while taking into account the configuration characteristics and middleware service recovery procedures.
Ali Kanso, Ferhat Khendek, Maria Toeroe
DASC1
2009 Generating AMF Configurations from Software Vendor Constraints and User Requirements
abstract
The service availability forum (SAF) has defined a set of service API specifications addressing the growing need of commercial-off-the-shelf high availability solutions. Among these services, the availability management framework (AMF) is the service responsible for managing the high availability of the application services by coordinating redundant application components. To achieve this task, an AMF implementation requires a specific logical view of the organization of the application's services and components known as an AMF configuration. Developing manually such a configuration is a complex, error prone, and time consuming task. In this paper, we present an approach for automatic generation of AMF configurations from a set of requirements given by the configuration designer and the description of the software as provided by the vendor. Our approach alleviates the need of configuration designers dealing with a large number of AMF entities and their relations.
Ali Kanso, Maria Toeroe, Abdelwahab Hamou-Lhadj, Ferhat Khendek
ARES1
2009 A Tool Suite for the Generation and Validation of Configurations for Software Availability
abstract
The Availability Management Framework (AMF) is a service responsible for managing the availability of services provided by applications that run under its control. Standardized by the Service Availability Forum (SAF), AMF requires for its operations a complete and compliant AMF configuration of the applications to be managed. In this paper, we describe two complementary and integrated tools for AMF configurations generation and validation. Indeed, writing manually an AMF configuration is a tedious and error prone task as a large number of requirements defined in the standard have to be taken into consideration during the process. One solution for ensuring compliance with the standard is the validation of the configurations against all the AMF requirements. For this, we have designed and implemented a domain model for AMF configurations and use it as a basis for an AMF configuration validator. To further ease the task of a configuration designer, we have devised and implemented a method for generating automatically AMF configurations.
Abdelouahed Gherbi, Ali Kanso, Ferhat Khendek, Abdelwahab Hamou-Lhadj, Maria Toeroe
ASE2