Skip to content
/ SOL Public

SOL: SDN optimization layer. A framework for writing network optimization problems more easily.

License

Notifications You must be signed in to change notification settings

progwriter/SOL

Folders and files

NameName
Last commit message
Last commit date

Latest commit

author
Victor Heorhiadi
Oct 20, 2019
dcdb8a7 · Oct 20, 2019
Jan 4, 2018
Jan 4, 2018
Sep 21, 2016
Oct 24, 2016
Jan 25, 2018
Jan 25, 2018
Oct 20, 2019
Sep 27, 2016
Jan 4, 2018
Jan 21, 2018
Oct 13, 2019
Dec 10, 2015
May 5, 2017
Sep 19, 2018
Aug 24, 2017
May 15, 2017
Apr 27, 2016
Jan 4, 2018
Jan 4, 2018
Jan 4, 2018
Jun 13, 2016

Repository files navigation

SOL: SDN Optimization Layer

SOL is a library that lets you rapidly prototype network management applications that require constructing an optimization. It is designed to work well with Software Defined Networking (SDN) as it makes use of the global view of the network to compute a globally optimal (or near-optimal) solution.

This repository contains the implementation of both the SOL libary, and its extension Chopin, which allows intent-driven composition of multiple SDN applications.

Why optimizations?

Optimization is incredibly common in the networking domain. Classic problems such as shortest path routing and maxflow can all be expressed as linear programs and solved efficiently.

Traffic engineering, middebox management, and other types of load balancing can also be expressed using optimizations.

Key features

  • Fast prototyping of optimizations for network management
  • Composition of multiple optimization applications using different fairness modes
  • Flexible resource computation logic
  • Integrations with ONOS SDN controller
  • Novel optimization capabilities, reusable across different applications, (e.g., reconfiguration minimization)

Integrations

SOL is desgined to be modular and could potentially integrate with multiple SDN controllers. This library contains the core optimization logic. It can be used on its own to quickly prototype applications, compose multiple optimizations and examine resulting solutions.

A rough view of the SOL library and integrations is as follows:

Disclaimer

SOL is a research project under development. Some APIs, integrations and documentation/links are subject to change.

Original papers

  • SOL
  • Chopin (to appear in CoNEXT'2018)

Python documentation

Available at Read the Docs.

About

SOL: SDN optimization layer. A framework for writing network optimization problems more easily.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages