Skip to content

Research at St Andrews

Unikernel support for the deployment of light-weight, self-contained, and latency avoiding services

Research output: Contribution to conferenceAbstract

Author(s)

School/Research organisations

Abstract

We have explored dataflow orchestration approaches that permit distributed systems to be constructed by interconnecting services. In such systems latency is often a problem. For example, large data volumes might have to be communicated across the network if computation cannot be co-located close to data sources. Similarly, high latency may be experienced if computation is geographically situated far from (mobile) users. A solution to this problem is the ability to deploy services in appropriate geolocations and wire them together in order to create distributed ecosystems. Such services should ideally be run within a separate protection domain. Hence, we seek to be able to rapidly deploy services in appropriate network locations and dynamically enact and orchestrate them.

Whilst it is safe to deploy units of code dynamically in remote locations using existing technologies, this task is hindered by the size of the deployment units. Current monolithic-based virtual appliances are very large, thus are potentially slow to deploy as they may need to be transmitted across a network.

In order to create a platform on which such services may be based, we are investigating Unikernel approaches. Employing Unikernels permits the services to be treated as first class computational components that can be composed easily and deployed dynamically. Unikernels are compact library operating systems that enable a single application to be linked against the kernel and to be executed in a single-address-space environment. Due to the absence of a large set of software modules that commonly exist in Unix-like operating systems, Unikernels are relatively smaller in size and are potentially more stable and cost-efficient. This research project presents Stardust – a new specialised Unikernel for the dynamic composition of services.

Stardust is designed to run on the Xen hypervisor and has a small codebase that can be maintained easily. Its codebase consists of the kernel which manages the underlying virtual hardware resources presented by the hypervisor. Moreover, Stardust supports modularity and can be customised by integrating software libraries as necessary to extend its functionality. Its kernel and software libraries are linked statically against a particular application or service to provide an immutable and single-purpose virtual appliance that can be deployed onto virtualisation environments. Stardust is designed to support high-level abstractions based on the Java programming language. It supports pre-emptive threading and includes a minimal set of programming libraries, which are required to execute a light-weight open-source Java virtual machine.

Our principles led us to take the route of re-engineering the standard software stack to create self- contained applications that are less-bloated and consequently much smaller. This research aims to engineer networks of distributed systems whose collective behaviour achieve some high-level objectives. Such networks are characterised by the functionality that resonates from nodal interactions instead of the individual nodes that run the computations. This project seeks to introduce strongly-typed communication channels in Stardust as a uniform mechanism to support communication and synchronisation of heterogeneous distributed system components.
Close

Details

Original languageEnglish
Number of pages1
StatePublished - 21 Mar 2018
EventThird Annual UK System Research Challenges Workshop - Macdonald Linden Hall Golf & Country Club, Northumberland, United Kingdom
Duration: 21 Mar 201823 Mar 2018
Conference number: 3
http://sysws.org.uk/workshop/2018/

Workshop

WorkshopThird Annual UK System Research Challenges Workshop
CountryUnited Kingdom
Period21/03/1823/03/18
Internet address

Discover related content
Find related publications, people, projects and more using interactive charts.

View graph of relations

Related by author

  1. Channel and active component abstractions for WSN programming: A language model with operating system support

    Harvey, P., Dearle, A., Lewis, J. P. & Sventek, J. 2012 SENSORNETS 2012 - Proceedings of the 1st International Conference on Sensor Networks. p. 35-44

    Research output: Chapter in Book/Report/Conference proceedingConference contribution

  2. Towards verifying correctness of wireless sensor network applications using Insense and Spin

    Sharma, O., Lewis, J. P., Miller, A., Dearle, A., Balasubramaniam, D., Morrison, R. & Sventek, J. 2009 Model Checking Software: 16th International SPIN Workshop, Grenoble, France, June 26-28, 2009, Proceedings. Pasareanu , C. S. (ed.). Springer, p. 223-240 18 p. (Lecture Notes in Computer Science; vol. 5578)

    Research output: Chapter in Book/Report/Conference proceedingConference contribution

  3. A component-based model and language for wireless sensor network applications

    Dearle, A., Balasubramaniam, D., Lewis, J. P. & Morrison, R. Jul 2008 32nd annual IEEE International Computer Software and Applications: COMPSAC 2008, 28 July-1 August 2008, Turku, Finland. IEEE Computer Society, p. 1303-1308 6 p. (IEEE COMPSAC)

    Research output: Chapter in Book/Report/Conference proceedingConference contribution

  4. Understanding the linking possibilities in Scottish Records and an algorithmic approach to full linkage

    Dearle, A., Kirby, G. N. C., Lee, W. & Dibben, C. 20 Jun 2018 1 p.

    Research output: Contribution to conferencePaper

ID: 252772078