Skip to Content.
Sympa Menu

rare-users - Re: [RARE-users] [rare-dev] [freertr] full table in tofnio2?

Subject: RARE user and assistance email list

List archive

Re: [RARE-users] [rare-dev] [freertr] full table in tofnio2?


Chronological Thread 
  • From: Alexander Gall <>
  • To: <>
  • Cc: "" <>, <>
  • Subject: Re: [RARE-users] [rare-dev] [freertr] full table in tofnio2?
  • Date: Thu, 5 Jan 2023 08:30:16 +0100


Hi csaba

Very useful, thanks. The only drawback might be that it's a bit more
tricky to troubleshoot routing issues when the FIB no longer matches
the RIB. Is there a way to display what optimiziations have been done
explicitly?

Also, while you're at it, did you consider dropping prefixes from the
FIB that have the same next-hop as the default (if one exists) and no
covering prefix?

--
Alex

On Thu, 5 Jan 2023 06:03:19 +0100, mc36 <> said:

> sorry for the spam again but seemingly we're having the stuff in place:
> this night the autosummary (global) knob arrived to all the routing
> protocols...
> and starting from now, we can do transparent fib compression without
> altering the rib:

> here is the rib of the v1 vrf:

> r1#show ipv4 route v1
> typ prefix metric iface hop time
> C 1.1.1.0/24 0/0 sdn1 null 00:00:28
> LOC 1.1.1.1/32 0/1 sdn1 null 00:00:28
> C 1.1.2.0/24 0/0 sdn2 null 00:00:28
> LOC 1.1.2.1/32 0/1 sdn2 null 00:00:28
> C 1.1.3.0/24 0/0 sdn3 null 00:00:28
> LOC 1.1.3.1/32 0/1 sdn3 null 00:00:28
> C 1.1.4.0/24 0/0 sdn4 null 00:00:28
> LOC 1.1.4.1/32 0/1 sdn4 null 00:00:28
> C 2.2.2.101/32 0/0 loopback0 null 00:00:28
> S 2.2.2.103/32 1/0 sdn1 1.1.1.2 00:00:28
> S 2.2.2.104/32 1/0 sdn2 1.1.2.2 00:00:28
> S 2.2.2.105/32 1/0 sdn3 1.1.3.2 00:00:28
> S 2.2.2.106/32 1/0 sdn4 1.1.4.2 00:00:28
> S 2.2.2.107/32 1/0 sdn4 1.1.4.2 00:00:28

> here is the programmed fib, the 2.2.2.106/32 & 2.2.2.107/32 got
> autoaggregated to 2.2.2.106/31

> r1#show p4lang p4 done-route4 1
> typ prefix metric iface hop time
> C 1.1.1.0/24 0/0 sdn1 null 00:00:41
> LOC 1.1.1.1/32 0/1 sdn1 null 00:00:41
> C 1.1.2.0/24 0/0 sdn2 null 00:00:41
> LOC 1.1.2.1/32 0/1 sdn2 null 00:00:41
> C 1.1.3.0/24 0/0 sdn3 null 00:00:41
> LOC 1.1.3.1/32 0/1 sdn3 null 00:00:41
> C 1.1.4.0/24 0/0 sdn4 null 00:00:41
> LOC 1.1.4.1/32 0/1 sdn4 null 00:00:41
> C 2.2.2.101/32 0/0 loopback0 null 00:00:41
> S 2.2.2.103/32 1/0 sdn1 1.1.1.2 00:00:41
> S 2.2.2.104/32 1/0 sdn2 1.1.2.2 00:00:41
> S 2.2.2.105/32 1/0 sdn3 1.1.3.2 00:00:41
> S 2.2.2.106/31 1/0 sdn4 1.1.4.2 00:00:41

> here you can spot that the dataplane does not report nor byte not packet
> counters to the 2.2.2.106/32 and 2.2.2.107/32
> simply because these two prefixes get compressed to 2.2.2.106/31, and the
> dataplane reports to that but that prefix is
> not in the rib, only in the fib:

> r1#show ipv4 counter v1
> transmit receive
> prefix pack byte pack byte time
> 1.1.1.0/24 10+0 640+0 0+0 0+0 00:00:53
> 1.1.1.1/32 0+8 0+624 0+0 0+0 00:00:53
> 1.1.2.0/24 10+0 640+0 0+0 0+0 00:00:53
> 1.1.2.1/32 0+9 0+702 0+0 0+0 00:00:53
> 1.1.3.0/24 10+0 640+0 0+0 0+0 00:00:53
> 1.1.3.1/32 0+9 0+702 0+0 0+0 00:00:53
> 1.1.4.0/24 10+0 640+0 0+0 0+0 00:00:53
> 1.1.4.1/32 0+9 0+702 0+0 0+0 00:00:53
> 2.2.2.101/32 40+40 2560+3120 0+0 0+0 00:00:53
> 2.2.2.103/32 10+30 640+2340 0+0 0+0 00:00:53
> 2.2.2.104/32 10+30 640+2340 0+0 0+0 00:00:53
> 2.2.2.105/32 10+1141 640+1252215 0+0 0+0 00:00:53
> 2.2.2.106/32 10 640 0 0 00:00:53
> 2.2.2.107/32 0 0 0 0 00:00:53

> and finally the config knobs of the p4lang server:

> r1#show running-config server p4lang p4
> server p4lang p4
> export-vrf v1
> export-compress4 v1
> export-compress6 v1
> export-port sdn1 1 10 0 0 0
> export-port sdn2 2 10 0 0 0
> export-port sdn3 3 10 0 0 0
> export-port sdn4 4 10 0 0 0
> interconnect ethernet2
> vrf v9
> exit
> !

> r1#

> br,
> cs


> On 1/5/23 05:18, mc36 wrote:
>> sorry for the spam, while added the test cases i found a bug that
>> prevented proper compression,
>> so the final numbers are 900k-->261k for v4 and 160k-->52k for v6, see
>> attached...
>> with this boost, we have plenty of headroom for both v4 and v6 in an nren
>> fib...
>> (we're a tier3 isp mostly default routing to the geant, the only exception
>> is bix (with
>> 120k prefixes, mostly from he.net) and some private peerings to local
>> bigger isps....
>> br,
>> cs
>>
>> On 1/4/23 18:42, mc36 wrote:
>>> not again! i forgot the commit url:
>>> https://github.com/rare-freertr/freeRtr/commit/d76a255b26b2ad3ade8de3a1124e21a1c32c2bcf
>>> the whole algo fits the screen... :)
>>>
>>> On 1/4/23 18:04, mc36 wrote:
>>>> hi,
>>>> i've just implemented fib compression based on the following two ideas:
>>>> -two consecutive prefixes with the same nexthop...
>>>> -subnets of a supernet with the same nexthop...
>>>> it reduced the niif v6 fib from 160968 to 72298 (44%) and the v4 fib
>>>> from 901199 to482847 (53%)
>>>> for the
>>>> https://bitbucket.software.geant.org/projects/RARE/repos/rare/browse/profiles/9.10.0/tofino2/profile-rawip.p4
>>>> profile we have a plenty of headroom for v6 and some headroom for v4...
>>>> for now only show commands are there but nothing holds back from adding
>>>> auto-summary knob
>>>> to the routing protocols and/or export-compress knob to the p4lang
>>>> server... or both...:)
>>>> br,
>>>> cs
>>>
>>>
>>>
>>>
>>>
>>
>>
>> -=-=-=-=-=-=-=-=-=-=-=-
>> Groups.io Links: You receive all messages sent to this group.
>> View/Reply Online (#919): https://groups.io/g/freertr/message/919
>> Mute This Topic: https://groups.io/mt/96066813/6006518
>> Group Owner:
>> Unsubscribe: https://groups.io/g/freertr/unsub []
>> -=-=-=-=-=-=-=-=-=-=-=-
>>
>>



Archive powered by MHonArc 2.6.19.

Top of Page