Giter VIP home page Giter VIP logo

sfc-controller's Introduction

SFC-controller

The proposed SFC controller has been implemented as an extension to the default scheduling feature available in Kubernetes. The SFC controller enables Kubernetes to efficiently allocate container-based service chains while maintaining bandwidth and reducing latency.

How does the SFC-controller work?

  • In the deployments folder you find a Kubernetes Deployment that launches our SFC-controller. Information can be found in the Kubernetes documentation.
  • Please see main/main.go. You should change the infrastructure weights/labels based on your own infrastructure before building the container.
  • Node labels are used to make allocation decisions based on bandwidth and latency.
  • Besides, our SFC-controller applies the new Kubernetes concepts of pod and node informers
  • If you would like to know further details about our SFC-controller, please read our papers mentioned below.

Build the SFC controller

  1. Use the Makefile to build your own Docker image. make build.
  2. Push the Docker image to a container registry: make push.

Deploy the SFC controller

  1. Deploy the SFC-controller policy configuration: kubectl create -f deployments/scheduler-policy-config.yaml.
  2. Deploy the SFC-controller: kubectl create -f deployments/sfc-controller-v2.yaml.
  3. Deploy your own pod. See deployments/pod-example.yaml.

Documentation

PowerPoint presentations of this work are located here.

Citation

If you use our work, please cite our articles.

@inproceedings{santos2019towards,
  title={Towards Network-Aware Resource Provisioning in Kubernetes for Fog Computing applications},
  author={Santos, Jos{\'e} and Wauters, Tim and Volckaert, Bruno and De Turck, Filip},
  booktitle={2019 IEEE Conference on Network Softwarization (NetSoft)},
  pages={351--359},
  year={2019},
  organization={IEEE}
}
@article{santos2019resource,
  title={Resource provisioning in Fog computing: From theory to practice},
  author={Santos, Jos{\'e} and Wauters, Tim and Volckaert, Bruno and De Turck, Filip},
  journal={Sensors},
  volume={19},
  number={10},
  pages={2238},
  year={2019},
  publisher={Multidisciplinary Digital Publishing Institute}
}
@inproceedings{pereira2020towards,
  title={Towards delay-aware container-based Service Function Chaining in Fog Computing},
  author={Pereira dos Santos, Jos{\'e} Pedro and Wauters, Tim and Volckaert, Bruno and De Turck, Filip},
  booktitle={NOMS2020, the IEEE/IFIP Network Operations and Management Symposium},
  pages={1--9},
  year={2020}
}
Demo presentation: Live Demonstration of Service Function Chaining allocation in Fog Computing

Team

Contact

If you want to contribute, please contact:

Lead developer: Jose Santos

For questions or support, please use GitHub's issue system.

License

Copyright (c) 2020 Ghent University and IMEC vzw.

Address: IDLab, Ghent University, iGent Toren, Technologiepark-Zwijnaarde 126 B-9052 Gent, Belgium

Email: [email protected].

sfc-controller's People

Contributors

jpedro1992 avatar

Stargazers

 avatar Zarah avatar Liang Tang avatar Srishti Saurav avatar Perhurb avatar  avatar  avatar zz avatar  avatar Angelo Marchese avatar Saeid Ghafouri avatar xieydd avatar Chen Wang avatar  avatar REGE avatar  avatar Changsu avatar  avatar

Watchers

 avatar

Forkers

vutuong

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.