Giter VIP home page Giter VIP logo

flexplane's Introduction

Flexplane is an experimentation platform for resource management in datacenters.

Users implement resource management schemes in C++ in a centralized software
emulator. The emulator emulates the behavior of the network in real time, and
instructs endpoints when to send packets (and whether to apply modifications,
such as ECN marks), so that packets arrive at their destinations with the
timings and modifications they would have in a hardware network that supported
the programmed scheme.

Flexplane is described in more detail in:
Amy Ousterhout, Jonathan Perry, Hari Balakrishnan, and Petr Lapukhov.
"Flexplane: An Experimentation Platform for Resource Management in Datacenters."
NSDI 2017.

Directory Structure

This repo is a fork of https://github.com/yonch/fastpass. The key directories
used by Flexplane are described below.

  src/
    - arbiter/       main emulator loop and multi-core communications
    - emulator/	     emulated network and example resource management schemes
    - kernel-mod/    Linux kernel module
    - protocol/      FCP (Fastpass Control Protocol) implementation
    - rpc_tool/	     tool for running RPC experiments

Compiling and running

For instructions on compiling and running the emulator (called the 'arbiter' in
Fastpass terminology), see the README in src/arbiter. For instructions on
compiling and running the endpoing kernel module, se the README in
src/kernel-mod.

Licenses
The following licenses apply to code in this repo.
-The original code forked from https://github.com/yonch/fastpass is licensed
 under an MIT License, Copyright (c) 2014 Jonathan Perry, Amy Ousterhout.
-The CCAN packages in src/arbiter/ccan carry individual licenses. Most packages
 are CC0 ("public domain"), others are LGPL and BSD-MIT.
-The code in src/kernel-mod is additionally released under the GPL v2.
-The code in src/protocol/platform/generic.h contains some code from the Linux
 kernel, and derives from the respective Linux code's license (e.g. GPL).

Questions?
Please e-mail Amy Ousterhout at [email protected].

flexplane's People

Contributors

aousterh avatar yonch avatar hbatmit avatar ambikak avatar devavratcelect avatar

Watchers

James Cloos avatar Long Gong avatar

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.