Re: yarr - Yet Another Route Server Implementation [WAS: Euro-IX quagga stable download and implementation]

2015-05-05 Thread Martin Winter

On Mon, 4 May 2015, Sebastian Spies wrote:

sorry, for the double post. dmarc fuckup...

Hey there,

considering the state of this discussion, BIRD seems to be the only
scalable solution to be used as a route server at IXPs. I have built a
large code base around BGP for the hoofprints project [1] and BRITE [2]
and would enjoy building another state-of-the-art open-source
route-server implementation for IXPs. Would you be so kind to send me
your feedback on this idea? Do you think, it makes sense to pursue such
a project or is it not relevant enough for you?


How about (instead of another implementation) helping one of the existing
projects?
Writing another implementation is easy. Keeping it up to date, testing
it and supporting it over multiple years is what I would worry about.

I would *strongly* suggest to solve that issue first before starting
on another implementation.

- Martin


Re: Euro-IX quagga stable download and implementation

2015-04-24 Thread Martin Winter

Andy, Goran (and everyone else)

Disclaimer first: I work full-time for OpenSourceRouting on Quagga.

On Fri, 24 Apr 2015, Andy Davidson wrote:


Hi, Goran, everyone --

On 23 Apr 2015, at 09:06, Goran Slavic gsla...@sox.rs wrote:

at the mailing list and have an interest in downloading and 
implementing the Euro-IX version of Quagga in our Internet exchange. My 
questions are simple:
- Considering the time when the post is written (2012) - what is the 
current status of the Euro-IX Quagga ?

- Where can it be downloaded as a stable release / version ?



[...]
Quagga's vanilla build will fail to stay up with large numbers of 
tables and participants.  Chris Hall did an amazing job at making a 
build that was more prone to staying up and his build is doing a 
sterling job at LINX (alongside BIRD) but I understand that this source 
tree is no longer maintained and that the task of merging his stability 
fixes into the mainline or OSR (https://www.opensourcerouting.org) 
version is not a simple job and has not been done.  This gives me a 
serious concern about the future of this branch.


On the Chris Hall branch: Chris did some great work fixing many issues, 
but unfortunatly, mostly in a solo mission on it's own. The idea (from
the beginning when Euro-IX sponsored his work) was to get this 
integrated back into the mainline Quagga.

However, by the time we got access to the code, it was a basically one
large diff of 1000's of lines with no git history. This would be a lot
of work to pick it apart again, review the code and commit it (in pieces)
into the mainline. We talked about supporting it as an alternative BGP 
daemon, but he changed quite a bit in zebra as well, so this was still

too much work. When I say too much, the issue was that noone was willing
to sponsor the work (person or money) to get this integrated.

We did (actually multiple times) look into the issues and made different 
plans on how to get the BGP performance fixed. But so far (in the past), 
everyone who sponsors us doesn't care much about the BGP scale and cares

more on IPv6 with OSPFv3, ISIS etc. So that's where most of our work went.
(Plus a lot of testing. I think Quagga is the only Open Source routing 
platform which is tested against protocol fuzzers and for RFC compliance)


There is now (again) some interest (mainly form european IX'es) to look 
into the problems and we started (again) to evaluate, measure and see how

we can fix it on a limited budget. The idea is to really get Quagga usable
as a RouteServer to have a 2nd choice (beside Bird). Happy to get 
donations (We are a US 501c3 non-profit) to actually make it happen.


Overall, if everyone here who complains would just donate a little bit
money (or some work), then the whole issue would be long solved.

BIRD just doesn?t die, no matter what scale we seem to throw at it. 
This thing just keeps flying.


Short term, if you are ok with a single solution and need something now 
for a route-server, I think Bird is the solution.
Long term, I hope to get Quagga as an alternative (and for everyone who 
wants 2 different solutions).


Bird initially was (and still is) focused to the Route server  Route 
reflector application and has some unique features there. Quagga is today 
more focused as a full routing daemon and mostly used in virtual routers, 
SDN applications and ToR routers.


Regards,
   Martin Winter
   (OpenSourceRouting, NetDEF)