To content
Project

OptiFaaS: Towards Optimal and Adaptive Allocation of FaaS Resources

Subject area Operating, Communication, Database and Distributed Systems
Term since 2022
Funding Deutsche Forschungsgemeinschaft (DFG)

Project description

Function-as-a-Service (FaaS) is the next step in the evolution of cloud-based virtualization after virtual machine services and container services. A key benefit of FaaS is how easy it has made application development: Developers only write small stateless functions which interact with platform services such as databases, streaming pipelines, or messaging -- all operation concerns are left to the FaaS provider and a large part of the application functionality is delivered by platform services. Due to the attractiveness of the programming model as well as the clear separation of state and function management, FaaS is also a promising candidate when extending the cloud towards the edge. While FaaS offers a powerful programming paradigm, it also suffers from a number of drawbacks: First, function placement usually does not consider data input and output implying that FaaS platforms tend to ship data between servers. Second, the cold start problem, which occurs when an arriving request finds no idle function instance, causes latency outliers which add up in multi-function workflows. This is even more pronounced in geo-distributed fog environments where the function code needs to be retrieved from a (geo-)remote machine first, further increasing cold start latency. Third, in the existing event-driven FaaS programming model, functions are triggered by single events. For modern applications, particularly in the Internet of Things, however a more powerful event model which can trigger functions based on multi-event rules would be very useful and also increase reusability of functions through loose function coupling and help to close the paradigm gap between FaaS and stream processing systems. Fourth, existing composition frameworks are provider-specific and do not support multi-provider workflows which, however, is crucial for cloud/edge/fog workflows. They are also orchestration-based, thus, leading to double billing.In OptiFaaS, we will research and design a FaaS platform which is ready for mixed cloud/edge/fog environments, addressing the problems outlined above. Namely, we will (i) design a novel FaaS platform which can run in a federated way across cloud/edge/fog while integrating existing FaaS services, (ii) design a novel multi-event trigger inspired by complex event processing, (iii) design a cross-platform FaaS choreography framework, (iv) design a smart function placement and scheduling approach which optimizes and adapts function placement at runtime regarding quality of service goals. The approach will consider locations of data input and outputs as well as already deployed functions, resource usage in participating FaaS nodes, cold starts, monetary cost, and constraints such as privacy. For this, we will apply and extend model predictive control and distributed decision-making techniques to the domain of FaaS.

Researchers

Location & approach

The campus of TU Dort­mund University is located close to interstate junction Dort­mund West, where the Sauerlandlinie A 45 (Frankfurt-Dort­mund) crosses the Ruhrschnellweg B 1 / A 40. The best interstate exit to take from A 45 is “Dort­mund-Eichlinghofen” (closer to South Campus), and from B 1 / A 40 “Dort­mund-Dorstfeld” (closer to North Campus). Signs for the uni­ver­si­ty are located at both exits. Also, there is a new exit before you pass over the B 1-bridge leading into Dort­mund.

To get from North Campus to South Campus by car, there is the connection via Vogelpothsweg/Baroper Straße. We recommend you leave your car on one of the parking lots at North Campus and use the H-Bahn (suspended monorail system), which conveniently connects the two campuses.

The Laboratory of Process Automation Systems is located at Building G2 on the North Campus. Find more information here.

TU Dort­mund University has its own train station (“Dort­mund Uni­ver­si­tät”). From there, suburban trains (S-Bahn) leave for Dort­mund main station (“Dort­mund Hauptbahnhof”) and Düsseldorf main station via the “Düsseldorf Airport Train Station” (take S-Bahn number 1, which leaves every 15 or 30 minutes). The uni­ver­si­ty is easily reached from Bochum, Essen, Mülheim an der Ruhr and Duisburg.

You can also take the bus or subway train from Dort­mund city to the uni­ver­si­ty: From Dort­mund main station, you can take any train bound for the Station “Stadtgarten”, usually lines U41, U45, U 47 and U49. At “Stadtgarten” you switch trains and get on line U42 towards “Hombruch”. Look out for the Station “An der Palmweide”. From the bus stop just across the road, busses bound for TU Dort­mund University leave every ten minutes (445, 447 and 462). Another option is to take the subway routes U41, U45, U47 and U49 from Dort­mund main station to the stop “Dort­mund Kampstraße”. From there, take U43 or U44 to the stop “Dort­mund Wittener Straße”. Switch to bus line 447 and get off at “Dort­mund Uni­ver­si­tät S”.

The Laboratory of Process Automation Systems is located at Building G2 on the North Campus. Find more information here.

The H-Bahn is one of the hallmarks of TU Dort­mund University. There are two stations on North Campus. One (“Dort­mund Uni­ver­si­tät S”) is directly located at the suburban train stop, which connects the uni­ver­si­ty directly with the city of Dort­mund and the rest of the Ruhr Area. Also from this station, there are connections to the “Technologiepark” and (via South Campus) Eichlinghofen. The other station is located at the dining hall at North Campus and offers a direct connection to South Campus every five minutes.

The Laboratory of Process Automation Systems is located at Building G2 on the North Campus. Find more information here. The building is within 5min walking distance of the H-Bahn Station "Dining Hall at North Campus".

The facilities of TU Dortmund University are spread over two campuses, the larger Campus North and the smaller Campus South. Additionally, some areas of the university are located in the adjacent “Technologiepark”.

Site Map of TU Dortmund University (Second Page in English).

Interactive map

The facilities of TU Dortmund University are spread over two campuses, the larger Campus North and the smaller Campus South. Additionally, some areas of the university are located in the adjacent "Technologiepark".

Campus Lageplan Zum Lageplan