[openib-general] [RFC] IB address translation using ARP

Yaron Haviv yaronh at voltaire.com
Thu Sep 29 14:09:23 PDT 2005


> -----Original Message-----
> From: openib-general-bounces at openib.org [mailto:openib-general-
> bounces at openib.org] On Behalf Of Sean Hefty
> Sent: Thursday, September 29, 2005 2:58 PM
> To: Hal Rosenstock
> Cc: Openib
> Subject: Re: [openib-general] [RFC] IB address translation using ARP
> 
> Hal Rosenstock wrote:
> >>I'm struggling with understanding how translation can even occur in
this
> case.
> >>What DGID is used when querying for the path record, and how is it
> obtained?
> >
> > Isn't it the DGID of the next hop IP router ? (I suppose in the case
of
> > multiple IPoIB subnets on the same IB subnet, it could shortcut
somehow
> > like NHRP does in terms of ATM v. CLIP (Classic IP over ATM).
> 
> How is the DGID of the next hop IP router used when connecting?  As an
> aside, do
> the IPoIB subnets all fall into the same broadcast domain?
> 
> >>What does SDP do in this case?
> >
> > Same as AT. It does the route lookup and ARPs for and then asks for
the
> > PathRecord of the next hop IP router.
> 
> I guess I'm confused here.  This gives a path record between the host
> system and
> the IP router.  How is that used to establish a connection to the
actual
> destination?  What values (DLID, DGID, pkey, etc.) go in the CM REQ
> message, and
> how are those values obtained?
> 
> - Sean

The idea as Hal was describing is following the common IP model:
1. per destination IP (and TOS in IP case) find the outgoing route entry

2. if it's a subnet covered by an adapter (IPoIB in our case, can have
multiple per port each with its own P_Key), find the net device to use 
3. if its not in one of my subnets than what is the IP of the router
covering that destination (e.g. default gateway), and what is the net
device I need to use (a device/port/partition combination).
4. send an arp on the net device find destination MAC

Note the destination IP in the ARP phase is either the REAL destination
IP in case of a local subnet, or the IP router IP address in case of a
gateway/router.

5. issue a path record between the source/dest GIDs (DGID taken from ARP
Result IPoIB MAC) 

That's how its done in SDP & ib_at I believe

The generalization beyond a local subnet is very important 
If we want to address all sorts of applications, and configurations
And not related to IB routing

e.g. a proxy/LB application that sits in between two IP subnets (both
over IB), future mapping from IB to external iWarp subnets, IP routers,
etc'
it also follows the exact flow as in GbE/IP

Yaron

> _______________________________________________
> openib-general mailing list
> openib-general at openib.org
> http://openib.org/mailman/listinfo/openib-general
> 
> To unsubscribe, please visit
http://openib.org/mailman/listinfo/openib-
> general



More information about the general mailing list