[ Charset UTF-8 unsupported, converting... ] > Hi Alexander, > > On 2021-12-04 10:42, Alexander V. Chernikov wrote: > >> * Is porting OpenBSD MPLS to FreeBSD feasible, or are we better off > >> doing a from-scratch implementation based on netgraph? > > It depends. MPLS implementaiton can be splitted into multiple logical > > parts - dataplane (input, control, output, forward) and control plane > > (programming ip routes+mpls and mpls-only fowarding state). Some parts > > of the former can indeed be imported from OpenBSD. However, most of > > the control plane part have to be written from scratch. Finally, it > > may be desired to maintain an programming interface close to the one > > already implemented in major routing SW (frr, bird) - I guess that > > would be simpler to achieve with native, non-netgraph implementation. > > Thanks for your description. I haven't started work yet, but I'd > probably import the dataplane from OpenBSD where I can and do a new > control plane, maybe that with a FRR/Bird-compatible API.
When you get to working with FRR let me know, I am a member of the CI infustructure team there and can hook you up directly with very knowledgeable FRR developers. > > I wasn't too keen on using netgraph anyways, I felt it was unnecessary > complexity. True, but with that complexity comes an ulmost unlimited flexiablity. > If I were to work on this, would I be better off starting with the > dataplane or control plane? I concur with Alexander on this, dataplace first, with an eye on how FRR/Bird interact with the dataplane. > > >> * Would some of the other committers here be willing to mentor/help me > >> if needed? > > I?d love to. Most of my the routing-related stack changes (modular > > lookup framework, nexthops, rtsock cleanups) were done to enable > > efficient kernel-based MPLS implementation. > > Thanks! > > -Neel (nc@) > > -- Rod Grimes rgri...@freebsd.org