Tilbake til søkeresultatene

NAERINGSPH-Nærings-phd

Exploring tiny, low latency virtual machines for edge-computing

Alternativ tittel: Studie av små, lav-latente virtuelle maskiner for edge-computing

Tildelt: kr 1,8 mill.

Prosjektnummer:

328864

Prosjektperiode:

2021 - 2026

Midlene er mottatt fra:

Geografi:

Native Performance Virtual Machines in Edge Computing HTTP caches Varnish provides a high-performance HTTP caching solution that governments, municipalities, media- and news-companies can run in-house. Sometimes because of distrust of public big-tech solutions, other times because of regulations. Varnish is regarded as the highest performing cache. HTTP caches help offload work from normal web-servers, by storing content in the cache for a time. Once the contents go stale, the content is removed from the cache and retrieved anew from the backend web-servers. This typically makes a website able to handle several times more users than it normally would if it had to serve every request. This is because websites spend a lot of resources constructing web pages using complex data and rules. In contrast, caches store the result directly in memory and can therefore serve this content at no computation cost. Edge computing One up-and-coming area of computation is edge-computing, where the computation is on servers, but also very close to end-users. The goal is to have low-latency access to compute resources for all kinds of devices that benefit from not doing these computations themselves, or does not have all the information. This is still a growing area, largely dominated by big tech companies who are using WebAssembly to run programs in isolation. The isolation is necessary for security and separates the program from the rest of the computer. With this PhD project, a solution is written that utilizes hardware virtualization to implement the highest-performance VMM possible, specialized for edge-computing. It will have a high quality implementation inside Varnish, but also implementations in other high-performance web servers. These solutions will effectively have native performance and be able to utilize native instruction set extensions, including those that are only available on server CPUs.

The PhD project will explore and innovate in the areas of multi-tenancy and programmable tenant logic for HTTP caches, as well as modern HTTP caching, machine learning and modern Linux kernel interfaces. Varnish Software is a company that deals with caching, the tools around this and enabling customers to run their own content-delivery networks. Varnish is currently used by 20% of the largest 10 000 websites, according to BuiltWith. Varnish is currently in the process of investigating new architectures that would greatly increase performance (io_uring, eBPF), which could entail a rewrite of their foundational products. This project will investigate alternative programming languages to cache configuration languages, investigate Virtual Machines for HTTP caching, multi-tenancy and various ideas around this. Additionally, some exploration will be done on what a modern HTTP cache would look like, and how it would work with the latest and greatest Linux kernel features. Additionally, bringing general computation to the Varnish HTTP cache will allow users to generate responses directly from the cache itself, as a high-performance web-server. There is potential for novelty in all these subjects, especially regarding low-latency computation on the edge. Is it expected that in the coming years, edge-computing will be an important part of Varnish. There is no known equivalent existing work that handles edge-computing in an HTTP cache with native performance, and with ultra-low latency.

Budsjettformål:

NAERINGSPH-Nærings-phd