Re: Nexthop/nexthop groups question

2020-10-03 Thread Alexander V. Chernikov
That's was the question behind the original question :-) As of today, FreeBSD 13 has the support for nexthops ( https://reviews.freebsd.org/D24232 ) and nexthop groups ( https://reviews.freebsd.org/D26449 ). Currently bird requires some changes to support multipath routing on *BSD: scan case in krt_read_route() assumes single nexthop and it's not extremely trivial to fix it.I would like to see bird multipath work out-of-the-box on FreeBSD, and I'm wondering what's the best way to achieve it. I see the following options:1) come up with a patch that supports the current model (RTM_ADD/RTM_DEL message for each multipath route) - that already works in frr.2) come up with a patch that supports sending all nexthops inside a single gateway. Longer-term:3) rtsock extension for creating nexthops / nhop groups and ability to specify nexthop/nexthop group as the gateway.4) (longer-term) netlink support  I'm currently leaning towards (1), (3) that would lay the work towards supporting (4).I can see (1) happening in a couple of weeks and (3) in a couple of months.I'm happy to work with bird developers on choosing the approach / outlining the requirements.  03.10.2020, 15:37, "Maria Matějka" :Hello!Wow, you've decided to drop the old routing KPI. We were wondering when this is going to happen. Definitely a good idea, I must say.From the overview, the new KPI looks to be pretty similar to Linux nexthops, so it may be quite easy to implement this new KPI together with implementing Linux nexthops.Thank you for pointing it out, this is a very useful note from you.Maria On October 3, 2020 3:28:41 PM GMT+02:00, Marek Zarychta  wrote:On 23.09.2020 07:10, Maria Matějka wrote:Hello!Yes, we definitely want to support it, yet last time when we were talking about it, it was still unstable. It is good news that it really has come in, we'll study it and most likely also implement it.Thank you for pointing this out.Maria On September 22, 2020 11:08:02 PM GMT+02:00, "Alexander V. Chernikov"  wrote:Hi folks,

Cumulus people implemented nexthop objects/nexthop groups [1] in Linux kernel some time ago. These changes allow for more efficient communications between kernel and userspace w/ wide multipath & large amount of routes.

Initial support landed [2] in FRR in 2019 and has notably improved since then.
Are there any plans to support this functionality in bird?


[1]: https://linuxplumbersconf.org/event/4/contributions/434/attachments/251/436/nexthop-objects-talk.pdf
[2]: https://github.com/FRRouting/frr/commit/50d8965075cf59744dde685ae01400d9b7ee08a2#diff-33257ed1c568e6554134d48dc13332d1

/Alexander
--Sent from my Android device with K-9 Mail. Please excuse my brevity.Dear Programmers,does it imply, that upcoming Linux nexthop objects/nexthop groups support in Bird will be automatically compatible also with just committed FreeBSD new routing kpi[1] ?[1] https://reviews.freebsd.org/D24232
 -- 
Marek Zarychta--Sent from my Android device with K-9 Mail. Please excuse my brevity.

Re: Nexthop/nexthop groups question

2020-10-03 Thread Maria Matějka
Hello!

Wow, you've decided to drop the old routing  KPI. We were wondering when this 
is going to happen. Definitely a good idea, I must say. 

From the overview, the new KPI looks to be pretty similar to Linux nexthops, so 
it may be quite easy to implement this new KPI together with implementing Linux 
nexthops.

Thank you for pointing it out, this is a very useful note from you. 

Maria

On October 3, 2020 3:28:41 PM GMT+02:00, Marek Zarychta 
 wrote:
>On 23.09.2020 07:10, Maria Matějka wrote:
>> Hello!
>>
>> Yes, we definitely want to support it, yet last time when we were 
>> talking about it, it was still unstable. It is good news that it 
>> really has come in, we'll study it and most likely also implement it.
>>
>> Thank you for pointing this out.
>> Maria
>>
>> On September 22, 2020 11:08:02 PM GMT+02:00, "Alexander V. Chernikov"
>
>>  wrote:
>>
>> Hi folks,
>>
>> Cumulus people implemented nexthop objects/nexthop groups [1] in
>Linux kernel some time ago. These changes allow for more efficient
>communications between kernel and userspace w/ wide multipath & large
>amount of routes.
>>
>> Initial support landed [2] in FRR in 2019 and has notably
>improved since then.
>> Are there any plans to support this functionality in bird?
>>
>>
>>
>[1]:https://linuxplumbersconf.org/event/4/contributions/434/attachments/251/436/nexthop-objects-talk.pdf
>
>>
>[2]:https://github.com/FRRouting/frr/commit/50d8965075cf59744dde685ae01400d9b7ee08a2#diff-33257ed1c568e6554134d48dc13332d1
>
>>
>> /Alexander
>>
>>
>> -- 
>> Sent from my Android device with K-9 Mail. Please excuse my brevity. 
>
>Dear Programmers,
>
>does it imply, that upcoming Linux nexthop objects/nexthop groups 
>support in Bird will be automatically compatible also with just 
>committed FreeBSD new routing kpi[1] ?
>
>[1] https://reviews.freebsd.org/D24232
>
>-- 
>Marek Zarychta

-- 
Sent from my Android device with K-9 Mail. Please excuse my brevity.

Re: Nexthop/nexthop groups question

2020-10-03 Thread Marek Zarychta

On 23.09.2020 07:10, Maria Matějka wrote:

Hello!

Yes, we definitely want to support it, yet last time when we were 
talking about it, it was still unstable. It is good news that it 
really has come in, we'll study it and most likely also implement it.


Thank you for pointing this out.
Maria

On September 22, 2020 11:08:02 PM GMT+02:00, "Alexander V. Chernikov" 
 wrote:


Hi folks,

Cumulus people implemented nexthop objects/nexthop groups [1] in Linux kernel 
some time ago. These changes allow for more efficient communications between kernel 
and userspace w/ wide multipath & large amount of routes.

Initial support landed [2] in FRR in 2019 and has notably improved since 
then.
Are there any plans to support this functionality in bird?



[1]:https://linuxplumbersconf.org/event/4/contributions/434/attachments/251/436/nexthop-objects-talk.pdf
  


[2]:https://github.com/FRRouting/frr/commit/50d8965075cf59744dde685ae01400d9b7ee08a2#diff-33257ed1c568e6554134d48dc13332d1
  


/Alexander


--
Sent from my Android device with K-9 Mail. Please excuse my brevity. 


Dear Programmers,

does it imply, that upcoming Linux nexthop objects/nexthop groups 
support in Bird will be automatically compatible also with just 
committed FreeBSD new routing kpi[1] ?


[1] https://reviews.freebsd.org/D24232

--
Marek Zarychta



Re: Nexthop/nexthop groups question

2020-09-22 Thread Maria Matějka
Hello!

Yes, we definitely want to support it, yet last time when we were talking about 
it, it was still unstable. It is good news that it really has come in, we'll 
study it and most likely also implement it.

Thank you for pointing this out.
Maria 

On September 22, 2020 11:08:02 PM GMT+02:00, "Alexander V. Chernikov" 
 wrote:
>Hi folks,
>
>Cumulus people implemented nexthop objects/nexthop groups [1] in Linux
>kernel some time ago. These changes allow for more efficient
>communications between kernel and userspace w/ wide multipath & large
>amount of routes.
>
>Initial support landed [2] in FRR in 2019 and has notably improved
>since then.
>Are there any plans to support this functionality in bird?
>
>
>[1]:
>https://linuxplumbersconf.org/event/4/contributions/434/attachments/251/436/nexthop-objects-talk.pdf
>[2]:
>https://github.com/FRRouting/frr/commit/50d8965075cf59744dde685ae01400d9b7ee08a2#diff-33257ed1c568e6554134d48dc13332d1
>
>/Alexander

-- 
Sent from my Android device with K-9 Mail. Please excuse my brevity.

Nexthop/nexthop groups question

2020-09-22 Thread Alexander V. Chernikov
Hi folks,

Cumulus people implemented nexthop objects/nexthop groups [1] in Linux kernel 
some time ago. These changes allow for more efficient communications between 
kernel and userspace w/ wide multipath & large amount of routes.

Initial support landed [2] in FRR in 2019 and has notably improved since then.
Are there any plans to support this functionality in bird?


[1]: 
https://linuxplumbersconf.org/event/4/contributions/434/attachments/251/436/nexthop-objects-talk.pdf
[2]: 
https://github.com/FRRouting/frr/commit/50d8965075cf59744dde685ae01400d9b7ee08a2#diff-33257ed1c568e6554134d48dc13332d1

/Alexander