Internet of Things -- Satish Srirama, Mohan Liyanage and Chii Chang (Responsible persons)
1. AMQP vs. MQTT
Advanced Message Queuing Protocol (AMQP) and MQ Telemetry Transport (MQTT) are two promising messaging protocols for the Internet of Things. In this topic, student will provide a comprehensive study and compare the two protocols. Further, a practical implementation and demonstration is required as a part of the comparison study.
2. A Study on Service Description Approaches in the Internet of Things
Various approaches have been introduced for description of the Internet of Things (IoT) services/resources. From the Service-Oriented Architecture (SOA) perspective, WSDL, WADL, DPWS were used. SensorML, SenML, were proposed for sensor devices. UPnP was long introduced for general office devices. Recent IETF CoAP (RFC7252) & CoRE standards also introduce their approaches for describing resources. Bluetooth has its own protocol and approach such as UUID and many different ports to describe bluetooth devices and resources. Moreover, we haven’t mention about the JSON-based service descriptions. It is now becoming impossible to rely on one single standard to enable autonomous machine-to-machine (M2M) communication because there is no global common standard for machine readable metadata. In this topic, student will study and compare all the service/resource description languages for IoT.
3. A Framework for Trustworthy Internet of Things
Security is one of the major challenges in the Internet of Things (IoT). Although various security-related works have been done for IoT, existing works were only based on the classic network security-aspect. For instance, “Cryptography alone cannot solve protecting information in IoT problem as internally compromised nodes can generate bogus information and still authenticate it using valid cryptographic” (Lize, Jingpei, & Bin, 2014). Further, the centralized solutions are not feasible for IoT since fundamentally, IoT is based on distributed environment. Assuming there can be a central management party to govern the entire environment is not realistic. Hence, IoT requires a feasible distributed trust strategy to overcome the drawback of existing security models......(see detail)
4. RFID and Mobile Internet of Things
RFID (Radio Frequency Identification) system is used in different domains like supply chain management, vehicle tracking, production lines, inventory control etc., to track objects wirelessly. RFID tags, each with a unique identification number are attached to the objects that we need to track. RFID readers can remotely sense the tags and gather up the relevant data which can process by the business applications. Although RFID technology has been around for many years, there are some research challenges still to be addressed by the research community.
1) Key issues in Integrating RFID with the Wireless Sensor Networks and possible solutions.
2) Research challenges when tracking fast moving objects holding RFID tags.
Mobile Cloud -- Satish Srirama (Responsible persons)
1. Augmented reality (Google Maps, GPS, info from Wikipedia or other sources)
- wifi/mobile network enabled phone gets info from gps, google streetview, match image, show information about place in phone)
- image recognition from live stream. A computer vision algorithm for looking direction detection in real-time.
2. NFC developments, possibilities, applications
"semantic city" - develop nfc app and system so tags placed in city and according to liking some of the places (by nfc touch) app suggests other places nearby to go visit or see, map
SciCloud -- Pelle Jakovits (Responsible person)
- GPU enabled MapReduce The goal of this topic is to study what is the state of art in using GPU's to accelerate the in-Map and in-Reduce computations in MapReduce, what is the best practices to 'move' Map & Reduce input data and GPU's, and how advanced are the Java GPU interfaces in comparison to other programming languages (C, C++, ...)
- Parallelization of SAR satellite data processing algorithms - Student should give an overview of the state of the art in this topic and try to apply some of the newest parallel algorithms on real SAR satelite data.
- Automatic object recognition in SAR satellite data using distributed processing algorithms - Student should give an overview of the state of the art in this topic and try to apply the newest methods to real SAR satelite data (Satelite pictures taken of Estonia)
- MPI on Hadoop Yarn. Hadoop Yarn is a all new Hadop version that separates the cluster resource management and HDFS from the computation model MapReduce and allows to switch it out for other computing engines. Student will study what is the state of the art in the available alternative computing engines for Yarn and will specifically focus on MPI (Message Passing Interface) implementations of Yarn.
Hadoop cloud computing projects -- Pelle Jakovits (Responsible person)
- NEWT - A fault tolerant BSP framework on Hadoop YARN - NEWT is a HPC framework ontop of Hadoop YARN which addresses the MapReduce issues with more complex algorithms. It was developed in our group and is in a working prototype state. Student should try to use NEWT to implement one or two scientific algorithms on NEWT and measure its efficiency and parallel speedup in a cluster. One outcome could be also a tutorial on how to adapt algorithms to to NEWT.
- HARP large scale processing framework – Student should study how HARP can be used to parallelise scientific computing algorithms or process large scale data.
- Cloudera Impala is based on Google Dremel and aims to provide Real-Time queries ontop of Apache Hadoop. Impala raises the bar for query performance while retaining a familiar user experience. With Impala, you can query data, whether stored in HDFS or Apache HBase – including SELECT, JOIN, and aggregate functions – in real time. Furthermore, it uses the same metadata, SQL syntax (Hive SQL), ODBC driver and user interface (Hue Beeswax) as Apache Hive, providing a familiar and unified platform for batch-oriented or real-time queries. Student should study how Impala can be used to speed up MapReduce or Hive computations by replacing some of the computing tasks with Impala queries instead.
Cloud deployment -- Pelle Jakovits (Responsible persons)
- Automatic deployment of scientific computing experiments using CloudML. CloudML enables the modelling deploying complex software systems in the cloud. CloudML is focused on enterprise service oriented applications and does not provide means to interact with already deployed system. The goal of this topic is to study what is needed to support executing scientific computing experiments on systems deployed with CloudML and how to integrate this approach with the CloudML engine.
- An interactive not-so-random visualizer for CloudML. CloudML enables the modelling deploying complex software systems in the cloud. One of it's advantages is that the user retains the model that represents the deployed system, and thus can modify the model at any time and re-deploy it. The goal of this work is to improve the graphical user interface for CloudML which currently is in a prototype state, and to study how to keep track of changes that are made to the deployed system over time.
- CloudML comparison to other cloud deployment managers CloudML enables the modelling deploying complex software systems in the cloud. The goal of this topic is to compare the functionality and ease of use of CloudML to other existing cloud deployment tools such as Cloudify, Puppet or Chef and to propose improvements to CloudML that would simplify it's real life use.