tech-net archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: MPLS patches



On Thu, Jan 03, 2008 at 07:59:00PM +0200, Mihai Chelaru wrote:
> David Young wrote:
> >Why is there MPLS code in ip_output.c?  I don't think that it belongs.
> >IP input/output routines are complicated enough as it is.  ISTM, MPLS
> >should look to IP like any other link-layer.
> 
> Well, I need to check if the destination family is AF_MPLS and prepend 
> shim in this case. Am I missing something ?
> 
> >
> >It is not very desirable for MPLS to disable fast-forwarding.  Why is
> >it necessary?
> >
> >-#if defined(IPSEC)
> >-       /* ipflow (IP fast forwarding) is not compatible with IPsec. */
> >+#if defined(IPSEC) || defined(MPLS)
> >+       /* ipflow (IP fast forwarding) is not compatible with IPsec nor 
> >MPLS. */
> >        m->m_flags &= ~M_CANFASTFWD;
> > #else
> 
> I wanted output to be done via ip_output() for the above reasons.

I am pretty sure that if you use an MPLS pseudo-interface to push/pop
MPLS labels, then you can take advantage of IPv4/IPv6 fast-forwarding
in the same kernel where you use MPLS, and you can avoid modifying the
IP stack at all.

I am working on a more detailed proposal for changes.

Dave

-- 
David Young             OJC Technologies
dyoung%ojctech.com@localhost      Urbana, IL * (217) 278-3933 ext 24



Home | Main Index | Thread Index | Old Index