netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Joseph Golio <golio@vieo.com>
To: "Thomas 'Dent' Mirlacher" <dent@cosy.sbg.ac.at>
Cc: netdev@oss.sgi.com, jeff young <jsy@vieo.com>,
	gary klesk <gklesk@vieo.com>
Subject: Re: [Fwd: IPoIB]
Date: Thu, 06 Jun 2002 14:14:42 -0500	[thread overview]
Message-ID: <3CFFB4A2.E9FC09FC@vieo.com> (raw)
In-Reply-To: Pine.GSO.4.05.10205301751370.9848-100000@mausmaki.cosy.sbg.ac.at

Thomas 'Dent' Mirlacher wrote:

Thomas,

    Thanks for the reply. The more I dig into this, the more I figure out that the
problem is larger than I though. Not only do I need to increase the size of a
hardware address, I also need to provide a new interface service routine to allow
the device driver to lookup/translate a portion of the hardware address  and return
more information that needs to go into the ARP cache.

Specifically, the IETF IPoIB group has defined an Infiniband hardware address to
have 1 byte of reserved, 3 bytes of Queue Pair Number (QPN) and 16 bytes of
Global Identifier (GID). Unfortunately, in order to build the hardware header
in packets to send, another piece of information is needed -- that being the Local
Identifier (LID). If the LID is kept in the ARP cache, then it will be readily
available
from "arp_find()" at the time of transmission. If we don't do that, we would have to
have a separate table and mechanism in the driver to map from QPN/GID ===> LID.
I would rather not do that if I didn't have to. It seems fundamental (at least to me)
that
everything one needs to build the hardware header  (at least everything that is
related
specifically to the destination) should be stored in the ARP cache.

Thoughts  anyone ?

Thanks,

Joe

> --snip/snip
>
> > >     I have a question. I am working on developing a Linux driver for IP over
> > > Infiniband (IPoIB) and
> > >     have run into an issue that I need your advice. The draft standard from the
> > > IETF on IPoIB
> > >     encapsulation and address resolution over Infiniband networks (see the link
> > > below - section 6.1.1)
> > >     defines the hardware address as being 20 bytes in length. It appears that
> > > the "netdevice.h" file in
> > >     Linux has MAX_ADDR_LEN set to 7 (at least in my version which is SuSe 7.3 -
>
> for 2.5.18 at least it's set to 8, but there is no reason to not change it to
> 20 beside wasting some memory
>
> n time for
>         a) broadcast address
>         b) device address
>         int netdevice
> sum(m[n]) times for the multicast list
>
> where n == number of network devices, m == number of MC entries per device
> as i can see it.
>
> and this "overhead" should be really acceptable :)
>
> ... probably you will break some "external" stuff like freeswan, but this
> shouldn't be your problem.
>
>         tm
>
> --
> in some way i do, and in some way i don't.

  parent reply	other threads:[~2002-06-06 19:14 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-05-30 12:32 [Fwd: IPoIB] Joseph Golio
2002-05-30 15:56 ` Thomas 'Dent' Mirlacher
2002-05-30 16:13   ` Joseph Golio
2002-06-06 19:14   ` Joseph Golio [this message]
2002-06-06 19:32     ` Thomas 'Dent' Mirlacher
2002-06-06 19:59       ` Joseph Golio

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=3CFFB4A2.E9FC09FC@vieo.com \
    --to=golio@vieo.com \
    --cc=dent@cosy.sbg.ac.at \
    --cc=gklesk@vieo.com \
    --cc=jsy@vieo.com \
    --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).