From: Sven Eckelmann <sven.eckelmann-Mmb7MZpHnFY@public.gmane.org>
To: b.a.t.m.a.n-ZwoEplunGu2X36UT3dwllkB+6BGkLq7r@public.gmane.org
Cc: netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
Hagen Paul Pfeifer <hagen-GvnIQ6b/HdU@public.gmane.org>,
b.a.t.m.a.n-ZwoEplunGu2X36UT3dwlltHuzzzSOjJt@public.gmane.org,
"David S. Miller" <davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>
Subject: Re: Reviewing batman-adv for net/
Date: Mon, 28 Jun 2010 10:55:45 +0200 [thread overview]
Message-ID: <201006281055.47004.sven.eckelmann@gmx.de> (raw)
In-Reply-To: <20100627222706.GC8285@nuttenaction>
[-- Attachment #1: Type: Text/Plain, Size: 2409 bytes --]
Hagen Paul Pfeifer wrote:
Thanks for your comments. Marek already answered the first two questions, and
I will write something about the last part.
[...]
> o The major code is twisted about bookkeeping stuff, configuration aspects
> and so on. The minor codebase is about protocol processing. What about a
> generalized architecture and a userspace implementation of the protocol?
> And communication via netlink sockets.
Even if it sounds interesting to have a userspace implementation - it just
doesn't work. Maybe you have something different in mind - so please comment a
little bit more about about your idea.
There were different implementations for that protocol, first one was a
complete userspace implementation - but it was just slow and not really
usable. The second one was not using skb because it was only a port of the
userspace implementation to the kernel. It was faster (better throughput, not
as much latency added), but still we noticed that we couldn't saturate our
fast links due to the overhead we added. That was the time the current form of
processing and forwarding using skbs was implemented. It was quite plain to us
that those "tiny" parts must be processed as fast as possible and we are not
able to communicate a lot inside the kernel to get the information we need to
forward packets or process new ones.
So I would assume that when we communicate with userspace which does some
processing of the incoming packets and changes them to get forwarded, we would
have the same overhead problems as before. That means we add unnecessary
latency and reduce the throughput a lot.
It works quite well for layer 3 mesh protocols (olsr, batman, babel, bmx, ..)
because they must not care about the actual routing of the packets -
everything is done by the IP routing code. But it does not work for things
which must route ethernet frames as there does not exist such a framework and
it is hard to create one which everyone will like and has enough information
to provide all features they need. Meshing with ethernet frames is relative
young (please correct me) and we see all the time that we need more things
which couldn't be done by layer 3 (or at least with a lot more work). An
example would be interface interface alternating which can reduce
interferences when communicating over many hops.
thanks,
Sven
[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 836 bytes --]
next prev parent reply other threads:[~2010-06-28 8:55 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-06-26 0:14 Reviewing batman-adv for net/ Sven Eckelmann
2010-06-26 0:14 ` [PATCH] net: Add batman-adv meshing protocol Sven Eckelmann
2010-06-27 22:27 ` Reviewing batman-adv for net/ Hagen Paul Pfeifer
2010-06-27 23:15 ` Marek Lindner
[not found] ` <201006280115.25518.lindner_marek-LWAfsSFWpa4@public.gmane.org>
2010-06-28 5:32 ` Henning Rogge
2010-06-28 8:55 ` Sven Eckelmann [this message]
2010-07-06 20:14 ` [PATCHv2] net: Add batman-adv meshing protocol Sven Eckelmann
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=201006281055.47004.sven.eckelmann@gmx.de \
--to=sven.eckelmann-mmb7mzphnfy@public.gmane.org \
--cc=b.a.t.m.a.n-ZwoEplunGu2X36UT3dwllkB+6BGkLq7r@public.gmane.org \
--cc=b.a.t.m.a.n-ZwoEplunGu2X36UT3dwlltHuzzzSOjJt@public.gmane.org \
--cc=davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org \
--cc=hagen-GvnIQ6b/HdU@public.gmane.org \
--cc=netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).