Skip to content
@Function-Delivery-Network

Function Delivery Network

Function Delivery Network

Motivation for FDN

Serverless computing despite having many advantages, usage of serverless computing across the edge-cloud continuum suffers from the following pain points:

  • Public cloud serverless compute platforms are limited to homogenous nodes
  • No support for seamless deployment of the FaaS functions across the edge-cloud continuum
  • Absence of serverless computing over multi-cloud and hybrid-cloud
  • Myriad of serverless compute platforms and their monitoring platforms
  • Serverless compute platforms do not account for the data access behavior of functions
  • Absence of user-workload requests orchestration across multiple serverless compute platforms

Introduction to FDN

The aspects mentioned above highlight some factors that make it difficult for users to adopt serverless computing for the edge-cloud continuum.

To this end, we develop an extension to the concept of Function-as-a-Service (FaaS) as a programming interface for serverless computing across the edge-cloud continuum. This extension is a network of distributed heterogeneous serverless compute clusters spread across the edge-cloud continuum called Function Delivery Network (FDN) analogous to Content Delivery Networks. A serverless compute cluster consists of a serverless compute platform on top of compute nodes deployed in a specific region, either at the edge, in the Cloud, or on-premise.

  • FDN provides seamless integration across the edge-cloud continuum by allowing the user to deploy and invoke the functions across heterogeneous serverless compute clusters in the continuum.
  • FDN also distributes the data required by the functions across the edge-cloud continuum by allowing the users to organize their data objects into storage buckets.

Based on these, FDN provides Function-Delivery-as-a-Service (FDaaS), which can deliver user workload functions invocations to a subset of serverless compute clusters spread across the continuum based on :

  1. function-awareness
  2. data-awareness

The invocations are then load balanced across the selected subset of clusters based on the set load balancing algorithm. The automatic management of resources in the proposed serverless-based FDN facilitates application development by shifting the burden to the cloud platform.

FDN Architecture

FDN Architecture

FDN Demo Video

Pinned

  1. virtual-kubelet virtual-kubelet Public

    Forked from virtual-kubelet/virtual-kubelet

    Virtual Kubelet is an open source Kubernetes kubelet implementation.

    Go

  2. FDN-Monitor FDN-Monitor Public

    FDN-Monitor is a client-based python tool for monitoring various serverless clusters. It’s main objective isto act as a sidecar with every virtual-kubelet node in FDN to collect various metrics fro…

    Python

  3. kube-prometheus kube-prometheus Public

    Forked from prometheus-operator/kube-prometheus

    Use Prometheus to monitor Kubernetes and applications running on Kubernetes

    Jsonnet

  4. TppFaaS TppFaaS Public

    Forked from maSteinbach/TppFaaS

    Jupyter Notebook 2

  5. KubeEdge-Openstack-Ansible-Automation KubeEdge-Openstack-Ansible-Automation Public

    This is the repository for automatically deploying the KubeEdge to OpenStack based cloud using ansible and terraform.

    HCL 2 1

Repositories

Showing 10 of 12 repositories

Top languages

Loading…

Most used topics

Loading…