T-110.6101 Special Assignment in Networking and Security P (1-10 cr)

Topics


Some of the topics available for a special assignment are listed below. If you are interested in a topic, please contact its instructor. 

The CSE Playroom wiki and the list of available equipment could be a good starting point for a special assignment that is not listed here. 

Implementation of a generic TCP protocol in user-space

InstructorAndrey Lukyanenko

The goal of the work is to realize a TCP protocol that takes the best parts of different existing implementations. It even can be implemented in userspace and work over UDP or directly form IP packets. The major aspect is to make a software that can be easily adjusted and switched from one version to another. The implementation might also be implemented on a phone (Android or Windows Phone).  The student is expected to have programming  skills in C++, C# or Java, depending on the implementation.

Multi-Resource Load Balancing in Open-source Cloud Platforms

InstructorNguyen, Trung Hieu

Virtual machine (VM) placement consists of selecting the best available server from a pool of large cloud data centers to schedule and deploy VMs. Specifically, when end users send their VM requests, some physical servers in the cloud data center will be selected to deploy the required VMs. To this end, open-source cloud management platforms use simple heuristics for VM allocation; for instance OpenNebula uses a load-aware algorithm considering only CPU utilization. Here, applying existing VM placement solutions for large resource-intensive VM workloads may cause low resource utilization and unbalance the load, thus requiring more servers which will then lead to increased expenditures on equipment and operational costs.

The aim of this special assignment is to implement a load balancing algorithm for VM placement on the open-source cloud platforms. The student involved in this topic is expected to: learn the basics of currently VM placement algorithms in open-source Cloud platforms; select one open-source IaaS cloud platform (e.g., OpenStack, OpenNebula, or Eucalyptus) as case study, then set up a private cloud computing test bed and implement/integrate a Multi-Resource Load Balancing algorithm (MRLB) into the selected platform; characterize the performance of proposed algorithm in term of utilization and load balancing of physical resources.

The student should be familiar with open-source cloud platforms and C/C++ language (if OpenNebula is selected), Python language (if OpenStack is selected), Java language (if Eucalyptus is selected) to complete the implementation of the MRLB algorithm.

References

Migration of Resource-Intensive Virtual Machine Workloads

InstructorNguyen, Trung Hieu

In practical scenario, when end users send their VM requests, some physical servers in the cloud data center will be selected to deploy the required VMs. In particular, the VM requests from different users are diverse and require taking multiple types and amounts of resources into account. For instance, a request for general purpose applications provides a balanced amount of CPU, memory, storage and network resources; a request for computer-intensive applications needs more CPU resources; and a request for database and memory caching applications needs more memory resources. Specifically, end users might send the request to create or terminate their own VM instances at any unpredictable time. Therefore, the physical servers can become overloaded/underloaded of multiple types of resources. In order to overcome these issues and improve the quality of provided services, the VM migration from one physical server to another is one option to efficiently handle such resource-intensive VM workloads. The aim of this special assignment is to design and evaluate metrics for: deciding: when a physical server is considered underloaded, so as to migrate the already placed VMs for energy efficiency purposes; when a physical server is considered overloaded, so as to migrate already placed VMs in order to improve the quality of provided services; which VMs from an overloaded physical server should be migrated to which physical server.

The student involved in this topic is expected to: learn the basics of VM migration in cloud datacenters; review the relevant metrics proposed in the literature to determine overload/underload of physical resources; characterize the performance of proposed metrics in term of utilization and load balancing of physical resources by simulation using synthetic datasets and real workload traces.

The student should be familiar with one programming language (e.g., C/C++, Java) to complete the evaluation task.

References