All Projects → dariobanfi → Multipath Sdn Controller

dariobanfi / Multipath Sdn Controller

🎛 Multipath Software Defined Networking Controller which sets up multipath forwarding tables and adjusts them based on network measurements

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Multipath Sdn Controller

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 (+185.71%)
Mutual labels:  networking, sdn
Sdn Handbook
SDN网络指南(SDN Handbook)
Stars: ✭ 856 (+2345.71%)
Mutual labels:  networking, sdn
Xdp
Package xdp allows one to use XDP sockets from the Go programming language.
Stars: ✭ 36 (+2.86%)
Mutual labels:  networking, sdn
Computer Networking
Free resources for a self-taught education in Computer Networking
Stars: ✭ 201 (+474.29%)
Mutual labels:  networking, sdn
Poseidon
Poseidon is a python-based application that leverages software defined networks (SDN) to acquire and then feed network traffic to a number of machine learning techniques. The machine learning algorithms classify and predict the type of device.
Stars: ✭ 310 (+785.71%)
Mutual labels:  networking, sdn
Kube Ovn
A Kubernetes Network Fabric for Enterprises that is Rich in Functions and Easy in Operations
Stars: ✭ 798 (+2180%)
Mutual labels:  networking, sdn
Libzt
ZeroTier Sockets - Put a network stack in your app
Stars: ✭ 486 (+1288.57%)
Mutual labels:  networking, sdn
Zerotierone
A Smart Ethernet Switch for Earth
Stars: ✭ 7,839 (+22297.14%)
Mutual labels:  networking, sdn
Metta
An information security preparedness tool to do adversarial simulation.
Stars: ✭ 867 (+2377.14%)
Mutual labels:  networking
Workshops
Training Course for Ansible Automation Platform
Stars: ✭ 951 (+2617.14%)
Mutual labels:  networking
Awareness
The new architecture of co-computation for data processing and machine learning.
Stars: ✭ 11 (-68.57%)
Mutual labels:  networking
Quavo
An open source OSRS emulation server aimed to be fast and informative.
Stars: ✭ 12 (-65.71%)
Mutual labels:  networking
Asyncio
asyncio historical repository
Stars: ✭ 952 (+2620%)
Mutual labels:  networking
Brmgr
Manage bridge devices and provide DHCP and DNS services to connected interfaces.
Stars: ✭ 11 (-68.57%)
Mutual labels:  networking
Awesome Scalability Toolbox
My opinionated list of products and tools used for high-scalability projects
Stars: ✭ 34 (-2.86%)
Mutual labels:  networking
Ubernet
Flexible networking library for Unity
Stars: ✭ 10 (-71.43%)
Mutual labels:  networking
Miniupnp
UPnP IGD implementation
Stars: ✭ 974 (+2682.86%)
Mutual labels:  networking
Network Programming
Small Projects on Socket Programming, Website Scanning, Wireless & Network Security
Stars: ✭ 33 (-5.71%)
Mutual labels:  networking
Libzmq
ZeroMQ core engine in C++, implements ZMTP/3.1
Stars: ✭ 7,418 (+21094.29%)
Mutual labels:  networking
Bash Toolkit
Este proyecto esá destinado a ayudar a los sysadmin
Stars: ✭ 13 (-62.86%)
Mutual labels:  networking

Multipath SDN Controller

This SDN Controller runs on top of a multipath network and sets up optimal multipath forwarding flow tables to maximize throughput. It uses Ryu and can be tested on an emulated network such as Mininet.

Dependencies

The controller requires a modified version of OpenvSwitch in order to run. It can be found in the following repositories, togheter with information about its modifications: https://github.com/dariobanfi/ovs-multipath

Architecture

The controller therefore has three logic components:

  • Topology Discovery Component This component is used to discover the SDN switches connected to the controller and have knowledge of the paths between them. This can be automatically be done on L2 Topologies through the Link Layer Discovery Protocol (LLDP) but can be more complex over network-layer routing and require a manual con guration (done through REST APIs).
  • Multipath Routing Component It uses the network knowledge to compute multiple paths and push the resulting computation as ow rules to the SDN switches. The rules can be a simple forward or a multipath forward, which splits the ow packets over two or more routes. The controller might additionally set up packet reordering rules at a switch that
  • Network Measurement Component This component is used to do real-time measurements of the network. The con- troller keeps an estimate of the latency and bandwidth of the multiple paths that connect the SDN switches of the multipath topology. This data is used by the multipath routing component to compute forwarding tables which maximize the throughput between the nodes.

Demo

Check out a visualization of the network benefits over here: https://www.youtube.com/watch?v=hkgf7l9Lshw&feature=youtu.be

To run the demo make sure to install the dependencies with pip (like bottle, ryu, etc) and to provide a video file to be streamed

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].