All Projects → progwriter → SOL

progwriter / SOL

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

Programming Languages

python
139335 projects - #7 most used programming language
tcl
693 projects

Projects that are alternatives of or similar to SOL

Terraform Provider Zerotier
Create, modify and destroy ZeroTier networks and members through Terraform.
Stars: ✭ 113 (+413.64%)
Mutual labels:  sdn
basebox
A tiny OpenFlow controller for OF-DPA switches.
Stars: ✭ 39 (+77.27%)
Mutual labels:  sdn
sdn-loadbalancing
To perform load balancing on fat tree topology using SDN Controller i.e. Floodlight and OpenDaylight.
Stars: ✭ 89 (+304.55%)
Mutual labels:  sdn
A Deep Rl Approach For Sdn Routing Optimization
A Deep-Reinforcement Learning Approach for Software-Defined Networking Routing Optimization
Stars: ✭ 125 (+468.18%)
Mutual labels:  sdn
Yabgp
Yet Another BGP Python Implementation
Stars: ✭ 177 (+704.55%)
Mutual labels:  sdn
opendaylight-sample-apps
Sample applications for use with OpenDaylight (https://www.opendaylight.org/)
Stars: ✭ 56 (+154.55%)
Mutual labels:  sdn
Good Articles By Sort
本仓库用来存放我看过的认为比较好的文章---根据分类排序
Stars: ✭ 93 (+322.73%)
Mutual labels:  sdn
pathman-sr
Pathman SR is an open-source app to compute paths and deploy routes in Segment Routing-enabled network.
Stars: ✭ 79 (+259.09%)
Mutual labels:  sdn
Computer Networking
Free resources for a self-taught education in Computer Networking
Stars: ✭ 201 (+813.64%)
Mutual labels:  sdn
v-switch
Virtual Encrypted Switch across the network, using UDP + AES + TAP
Stars: ✭ 27 (+22.73%)
Mutual labels:  sdn
Kathara
A lightweight container-based network emulation system.
Stars: ✭ 139 (+531.82%)
Mutual labels:  sdn
Stratum
Stratum is an open source silicon-independent switch operating system for software defined networks.
Stars: ✭ 176 (+700%)
Mutual labels:  sdn
Ryu-SDN-IP
SDN-IP project implemented by Ryu SDN framework.
Stars: ✭ 33 (+50%)
Mutual labels:  sdn
Corebgp
CoreBGP is a BGP library written in Go that implements the BGP FSM with an event-driven, pluggable model.
Stars: ✭ 124 (+463.64%)
Mutual labels:  sdn
pilot
Simple web-based SDN controller for family and friends
Stars: ✭ 33 (+50%)
Mutual labels:  sdn
Fastclick
FastClick - A faster version the Click Modular Router featuring batching, advanced multi-processing and improved Netmap and DPDK support (ANCS'15). Check the metron branch for Metron specificities (NSDI'18).
Stars: ✭ 100 (+354.55%)
Mutual labels:  sdn
hybridnet
A CNI plugin, provides networking environment where overlay and underlay containers can run on the same node and have cluster-wide bidirectional network connectivity.
Stars: ✭ 188 (+754.55%)
Mutual labels:  sdn
zero-ui
ZeroUI - ZeroTier Controller Web UI - is a web user interface for a self-hosted ZeroTier network controller.
Stars: ✭ 432 (+1863.64%)
Mutual labels:  sdn
netbox-joined-inventory
Netbox_joined_inventory is a python script that gathers data from a Netbox source-of-truth and stores them as Ansible inventory, group_vars and host_vars files.
Stars: ✭ 21 (-4.55%)
Mutual labels:  sdn
python-openflow
Low level OpenFlow messages parser used by Kytos SDN Platform
Stars: ✭ 44 (+100%)
Mutual labels:  sdn

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.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].