From: Michael Bellion and Thomas Heinz <nf@hipac.org>
To: Jamie Lokier <jamie@shareable.org>
Cc: "David S. Miller" <davem@redhat.com>,
hadi@cyberus.ca, linux-net@vger.kernel.org, netdev@oss.sgi.com
Subject: Re: [RFC] High Performance Packet Classifiction for tc framework
Date: Tue, 12 Aug 2003 17:39:15 +0200 [thread overview]
Message-ID: <3F390A23.3050409@hipac.org> (raw)
In-Reply-To: <20030812142913.GB18802@mail.jlokier.co.uk>
[-- Attachment #1: Type: text/plain, Size: 1599 bytes --]
Hi Jamie
You wrote:
> You can do it in O(log(n_bits_in_prefix_mask)).
>
> This is achieved using binary search on the prefix lengths which
> appear in the table. (So if only a few prefix lengths are used, the
> tree is small).
>
> [example snipped]
That's true for the one dimensional PCP (with prefix rules) if
the following condition holds:
for all rules r1, r2: (prefix(r1) > prefix(r2)) &&
(r1 & prefix(r2) == r2 & prefix(r2))
=> prio(r1) < prio(r2)
[smallest prio wins]
It's quite reasonable to assume that this condition holds
for the one dimensional case since there would be never
matching rules otherwise.
> This generalises to multiple dimensions e.g. for doing multiple
> prefixes on source+target + different combinations of other bits such
> as protocol, TOS etc. - i.e. arbitrary bit-subset classifiers. The
> basic principle and the algorithm are the same.
Hm, how do you want to solve the d-dimensional PCP by
doing binary search for each dimension? Remember that
PCP is not related to longest prefix matching. Instead
priorities are used.
Maybe you should describe in little more detail what you mean
by "This generalises to multiple dimensions ...".
Regards,
+-----------------------+----------------------+
| Michael Bellion | Thomas Heinz |
| <mbellion@hipac.org> | <creatix@hipac.org> |
+-----------------------+----------------------+
| High Performance Packet Classification |
| nf-hipac: http://www.hipac.org/ |
+----------------------------------------------+
[-- Attachment #2: Type: application/pgp-signature, Size: 251 bytes --]
next prev parent reply other threads:[~2003-08-12 15:39 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-07-14 8:45 [RFC] High Performance Packet Classifiction for tc framework Michael Bellion and Thomas Heinz
2003-07-16 5:02 ` jamal
2003-07-17 13:13 ` Michael Bellion and Thomas Heinz
2003-08-03 18:14 ` jamal
2003-08-04 13:17 ` Michael Bellion and Thomas Heinz
2003-08-04 15:51 ` jamal
2003-08-05 22:21 ` Michael Bellion and Thomas Heinz
2003-08-07 19:58 ` jamal
2003-08-07 20:05 ` David S. Miller
2003-08-08 21:51 ` jamal
2003-08-09 0:01 ` David S. Miller
2003-08-11 22:39 ` Michael Bellion and Thomas Heinz
2003-08-12 2:57 ` jamal
2003-08-12 14:56 ` Michael Bellion and Thomas Heinz
2003-08-12 15:41 ` jamal
2003-08-12 5:40 ` David S. Miller
2003-08-12 14:29 ` Jamie Lokier
2003-08-12 15:39 ` Michael Bellion and Thomas Heinz [this message]
2003-08-15 14:28 ` Jamie Lokier
2003-08-13 17:28 ` Ralph Doncaster
2003-08-13 19:17 ` Jamie Lokier
2003-08-13 21:10 ` Ralph Doncaster
2003-08-13 23:21 ` Jamie Lokier
2003-08-12 14:56 ` Michael Bellion and Thomas Heinz
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=3F390A23.3050409@hipac.org \
--to=nf@hipac.org \
--cc=davem@redhat.com \
--cc=hadi@cyberus.ca \
--cc=jamie@shareable.org \
--cc=linux-net@vger.kernel.org \
--cc=netdev@oss.sgi.com \
/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).