From: Vladimir Medvedkin <medvedkinv@gmail.com>
To: Matthew Hall <mhall@mhcomputing.net>
Cc: "<dev@dpdk.org>" <dev@dpdk.org>
Subject: Re: [dpdk-dev] rte_lpm with larger nexthops or another method?
Date: Tue, 23 Jun 2015 10:19:58 +0300 [thread overview]
Message-ID: <CANDrEHnh-cbT0ATSuvVjJ2xMyNL+tW+s3HY0f+=FSwpNF0uZNg@mail.gmail.com> (raw)
In-Reply-To: <20150623063024.GA3458@mhcomputing.net>
Hi all,
Matthew, I think ipv6 lpm code need less changes
struct rte_lpm6_tbl_entry {
uint32_t next_hop: 21; /**< Next hop / next table to be
checked. */
uint32_t depth :8; /**< Rule depth. */
/* Flags. */
uint32_t valid :1; /**< Validation flag. */
uint32_t valid_group :1; /**< Group validation flag. */
uint32_t ext_entry :1; /**< External entry. */
};
there already is 21 bit for next_hop (need chenge only for rte_lpm6_rule)
In Stephen approach for next_hop given only 16 bits, this is enough for
next hop index, but not enough for AS number that originate prefix.
Regards,
Vladimir
2015-06-23 9:30 GMT+03:00 Matthew Hall <mhall@mhcomputing.net>:
> On Mon, Jun 22, 2015 at 11:51:02PM -0400, Stephen Hemminger wrote:
> > In order to make Vyatta/Brocade router work with LPM code
> > I ended up redoing the layout. It is:
> >
> > And also several other scalability improvements (plus IPv6)
> > and the correct handling of /32.
> >
> > Unfortunately, this is such a big binary change that I was
> > reluctant to break any tests or applications using existing code
> > and therefore never submitted the patches.
>
> 1. What you and Vladimir have done to this code kicks total ass and will
> be a
> huge help so I am very excited to squeeze in some cycles somewhere to test
> all
> of this stuff out ASAP.
>
> 2. Vladimir's changes were somewhat smaller, but Stephen yours are larger.
> Stephen, if you could place them into a cloned copy of DPDK or a branch
> somewhere for convenient pickup, I think I could help you make a lot of
> progress.
>
> I could help test these fixes in a second app besides your own to get some
> cross validation, and help make the required cleanups, so we could get a
> bit
> more external validation before we try to negotiate a safe way to merge
> them
> upstream to Bruce since he is marked as the LPM maintainer.
>
> My DPDK fork is located here, for example, but it could really be anywhere
> you
> like to put it which I could access. Or even a one-off zip or tarball with
> the
> git repo inside and I could host it in my fork or give you access on the
> fork
> to push it as a second remote if you are OK to do that...
>
> https://github.com/megahall/dpdk_mhall
>
> Matthew.
>
next prev parent reply other threads:[~2015-06-23 7:19 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-06-22 2:29 Matthew Hall
2015-06-22 10:11 ` Vladimir Medvedkin
2015-06-22 17:53 ` Matthew Hall
2015-06-23 3:51 ` Stephen Hemminger
2015-06-23 6:30 ` Matthew Hall
2015-06-23 7:19 ` Vladimir Medvedkin [this message]
2015-06-24 4:13 ` Matthew Hall
2015-06-24 4:28 ` Matthew Hall
2015-06-24 5:15 ` Matthew Hall
2015-06-24 7:04 ` Vladimir Medvedkin
2015-06-24 17:56 ` Matthew Hall
2015-06-26 7:01 ` Matthew Hall
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='CANDrEHnh-cbT0ATSuvVjJ2xMyNL+tW+s3HY0f+=FSwpNF0uZNg@mail.gmail.com' \
--to=medvedkinv@gmail.com \
--cc=dev@dpdk.org \
--cc=mhall@mhcomputing.net \
/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).