Subject: Rare project developers
List archive
- From: Alexander Gall <>
- To: <>
- Cc: "" <>, Frédéric LOUI <>, David Richardson <>
- Subject: Re: [rare-dev] further negotiations in between the dataplane and freerouter...
- Date: Tue, 12 Jul 2022 10:45:02 +0200
Hi
On Tue, 5 Jul 2022 19:28:51 +0200, mc36 <> said:
> so as nobody likes the magic numbers, and we already have a handshake in
> between the dataplane and the control plane,
> i got the idea that what if the bffwd would tell freerouter all the
> remaining mapping of the export-port parameters,
> like fec, autoneg and flwctrl? then the netadmin would be able to use the
> names much like it's already happening with
> the front-panel port names?
Appreciated :) What would be even better is if the config would show
the names instead of the translated numbers, e.g. from you example
sid(cfg-server)#show running-config this
server p4lang p4
export-port sdn1 sdn1 frontpanel-1/1 10 rs off auto
The way it is now, the meaning of the parameters is lost after
configuration. I suppose you did it that way because the translation
takes place in the parser. But how about storing both, the names and
the values in the config? Then, for the show command you'd display the
names but when the config is applied it reads the numbers.
While you're at it, why not extend the mechanism to the other export
properties like VRFs? It should not be up to the user to pick the
number that represents a VRF in a P4 table.
Ideally I would like to see the entire "server p4lang" section gone,
at least as a user-servicable config. I guess the export-port
functionality could remain there as an exception (once only the
symbolic names are shown :) I think I've mentioned before that the
mechanism used by IOS-XR (i.e. "interface preconfigure", "controller
Optics...") is pretty clever. Maybe something to work towards in the
future?
> here is the small change implementing the above:
> https://github.com/rare-freertr/freeRtr/csdn1 frontpanel-1/1 10 rs off
> autoommit/7ffaa39864c0eb54fa546bb630337fab5dc60d7c
> the drawback of this commit is the additional complexity in case of
> gearboxed switches like the
> bf2556tx where these magics need to be translated to the gearbox values in
> case of gearbox ports...
> ps: alex, as you're the only one access to a tofino2, could you please
> verify if these are the right values on 400g too?
Actually, the values are our own invention :/ BFRT uses strings like
'BF_FEC_TYP_FC' or 'BF_SPEED_200G'. They are defined here:
https://bitbucket.software.geant.org/projects/RARE/repos/rare/browse/bfrt_python/rare/bf_gbl_env/cst_env.py
and the translation is here:
https://bitbucket.software.geant.org/projects/RARE/repos/rare/browse/bfrt_python/rare/bf_rt_rare/get_str_fec.py
Tofino2 uses the same names, so should not be a problem, except that
there are obviously more speed settings.
In fact, your change basically makes the numbers obsolete. For
example, the forwarder now tells freerouter that it should use 3 for
RS FEC and the user can enter it as "rs". Freerouter then translates
"rs" to 3 and sends that to freerouter, which immediately translates
it to "BF_FEC_TYP_RS". We could simply omit the numbers now and only
use the names.
BTW, there is no "auto" FEC. It's either none, rs or fc. The value 0,
which is called "auto" is simply mapped to none. We should get rid of
it.
The forwarder is currently a bit of a mess when it comes to
encapsulating target and platform dependent stuff :/
--
Alex
> ps2: could someone please populate the flow control table in bffwd? :)
> thanks,
> cs
> sid#configure
> sid(cfg)#server p4lang p4
> sid(cfg-server)#show running-config this
> server p4lang p4
> export-vrf v2 2
> 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 pwether0
> vrf v1
> exit
> !
> sid(cfg-server)#export-port sdn1 frontpanel-1/1 ?
> <cr>
> <num> - speed in gbps
> sid(cfg-server)#export-port sdn1 frontpanel-1/1 10 ?
> <cr>
> <num> - fec, see hw vendor manual
> auto - fec, see hw vendor manual
> fc - fec, see hw vendor manual
> none - fec, see hw vendor manual
> rs - fec, see hw vendor manual
> sid(cfg-server)#export-port sdn1 frontpanel-1/1 10 rs ?
> <cr>
> <num> - autoneg, see hw vendor manual
> auto - autoneg, see hw vendor manual
> off - autoneg, see hw vendor manual
> on - autoneg, see hw vendor manual
> sid(cfg-server)#export-port sdn1 frontpanel-1/1 10 rs off ?
> <cr>
> <num> - flowctrl, see hw vendor manual
> auto - flowctrl, see hw vendor manual
> sid(cfg-server)#export-port sdn1 frontpanel-1/1 10 rs off auto ?
> <cr>
> sid(cfg-server)#export-port sdn1 frontpanel-1/1 10 rs off auto
> sid(cfg-server)#show running-config this
> server p4lang p4
> export-vrf v2 2
> export-port sdn1 1 10 3 1 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 pwether0
> vrf v1
> exit
> !
> sid(cfg-server)#
- [rare-dev] further negotiations in between the dataplane and freerouter..., mc36, 07/05/2022
- Re: [rare-dev] further negotiations in between the dataplane and freerouter..., Alexander Gall, 07/12/2022
- Re: [rare-dev] further negotiations in between the dataplane and freerouter..., mc36, 07/12/2022
- Re: [rare-dev] further negotiations in between the dataplane and freerouter..., Alexander Gall, 07/14/2022
- Re: [rare-dev] further negotiations in between the dataplane and freerouter..., mc36, 07/14/2022
- Re: [rare-dev] further negotiations in between the dataplane and freerouter..., mc36, 07/15/2022
- Re: [rare-dev] further negotiations in between the dataplane and freerouter..., Alexander Gall, 07/15/2022
- Re: [rare-dev] further negotiations in between the dataplane and freerouter..., mc36, 07/14/2022
- Re: [rare-dev] further negotiations in between the dataplane and freerouter..., Alexander Gall, 07/14/2022
- Re: [rare-dev] further negotiations in between the dataplane and freerouter..., mc36, 07/15/2022
- Re: [rare-dev] further negotiations in between the dataplane and freerouter..., mc36, 07/16/2022
- Re: [rare-dev] further negotiations in between the dataplane and freerouter..., mc36, 07/12/2022
- Re: [rare-dev] further negotiations in between the dataplane and freerouter..., Alexander Gall, 07/12/2022
Archive powered by MHonArc 2.6.19.