DragonFly submit List (threaded) for 2008-07
Re: MPLS support for DragonFly
On Tue, Jul 1, 2008 at 11:57 PM, Matthew Dillon
> :Hi All,
> :I have this patch  sitting in my tree for several months now (just
> :caught up with HEAD last weekend) but maybe it's time to ask others
> :opinion before it grows spider webs on it :). It adds MPLS (Multi
> :Protocol Label Switching) support to DragonFly and still has some
> :loose ends but basically it works. For now, only static mpls routes
> :are supported. To make it really usable, an LDP and / or RSVP
> :implementation would be needed to accompany it. If reviews are
> :positive I would like to put it in and commit it maybe after the
> :release in order to allow for wider testing.
> : http://leaf.dragonflybsd.org/~nant/wip/mpls-20080701.patch
> It looks pretty clean. The only thing I see is that you've stuck
> the routing in the ip_output code. Isn't it supposed to be
> multi-protocol? i.e. more of a MAC-like layer routing and not
> necessarily just for IP ?
> Matthew Dillon
Yes, it serves three purposes:
1) It can switch mpls packets, i.e. receive as mpls, swap the label
and forward out again as an mpls packet, or
2) it can work as an ingress node i.e. receive an ip packet, push a
label to it and forward out as mpls packet, or
3) it can work as egress node i.e. receive an explicit-null labeled
mpls packet, pop the label out and process the packet.
Historically, MPLS was supposed to work with ATM too and make use of
vpi/vci as label containers. But what I've seen so far was mostly MPLS
over Ethernet encapsulating IP or layer2 traffic.