Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 17 Jul 2014 14:39:13 -0400
From:      Daniel Corbe <corbe@corbe.net>
To:        Jan Bramkamp <crest@rlwinm.de>
Cc:        freebsd-net@freebsd.org
Subject:   Re: netmap, selective processing.
Message-ID:  <ygf4myfu8xa.fsf@corbe.net>
In-Reply-To: <53C71196.4030501@rlwinm.de> (Jan Bramkamp's message of "Thu, 17 Jul 2014 01:58:14 %2B0200")
References:  <ygfzjg9tcs5.fsf@corbe.net> <53C71196.4030501@rlwinm.de>

next in thread | previous in thread | raw e-mail | index | archive | help

Jan Bramkamp <crest@rlwinm.de> writes:

> On 16.07.2014 19:48, Daniel Corbe wrote:>
>> I hope this it the right place to ask questions about netmap.  I'm
>> toying with the idea of writing a netmap-based OSPF implementation
>> because bird's OSPF implementation isn't as good as its BGP
>> implementation, quagga doesn't scale well and openospfd doesn't compile
>> on 10-RELEASE or CURRENT.
>
> How many prefixes do you have in your OSPF area 0? If you run into
> scalability problems with OSPF on current x86 CPUs your network design
> probably is the cause of the problem e.g. redistributing announcements
> from BGP into OSPF.

I have about 15k interior routes.  And most of it is RFC1918 address
space or random /64s doing various things.  So when I say I'm worried
about scale issues, I should more accurately be saying "I just don't
want to use quagga but I can't get anything else to work."

>
> OSPF is just one more (rather ugly) IP protocol. Is moving the OSPF
> packets between kernel and userspace really a problem worth optimizing
> for? Putting netmap between the NIC and the kernel IP stack introduces
> overhead to all non OSPF packets unless your netmap application also
> implements IP routing and bypasses the kernel.

I've been searching for a reason to play with netmap.  It looks like a
neat toy.  And at worst I will have implemented something only useful to
one person but I'll also have learned something in the process.

>From the perspective of totally wrecking the performance of the host
network stack: how much more overhead am I really introducing by looking
at every packet inside of the netmap framework and going "am I really
interested in this?  Or should I simply pass it through to the host."

And I'm hoping this leads me down the avenue of doing interesting things
with MPLS.  MPLS is something that absolutely needs to look at
everything because labels should always be processed and forwarded
first.

-Daniel



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?ygf4myfu8xa.fsf>