Skip to content

tbino/kyro

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Kyro

Introduction

Kyro is a set of python daemons designed to measure realtime network performance and inject optimal routes into a BGP router.

Features at a Glance

  • Uses ICMP packets and IP TTL to map out network paths
  • Implements BGP4 protocol and can peer with BGP routers
  • Written in Python using the Twisted event framework

Architecture

There are two daemons: router.py and analyzer.py

Router.py uses Kyro's BGP library to listen for best-path route updates from a BGP speaking router. These route updates are used to populate a list of prefixes that should be optimized.

Analyzer.py continuously checks the packet loss and mean round trip time for each prefix over each path. If a more optimal path is found than the current best-path, analyzer.py will ask router.py to inject the new route into the BGP router's routing table.

Dependencies

Detailed Overview

Run router.py --help for more information.

About

BGP route optimizer

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 98.6%
  • ApacheConf 1.4%