[openib-general] RDMA connection and address translation API
Fab Tillier
ftillier at silverstorm.com
Wed Aug 24 11:59:57 PDT 2005
> From: Caitlin Bestler [mailto:caitlin.bestler at gmail.com]
> Sent: Wednesday, August 24, 2005 11:14 AM
>
> On 8/24/05, Fab Tillier <ftillier at silverstorm.com> wrote:
> > > From: Roland Dreier [mailto:rolandd at cisco.com]
> > > Sent: Wednesday, August 24, 2005 10:16 AM
> > >
> > > Fab> Knowledge of actual IP addresses would be up to the consumer.
> > > Fab> However, the IB CM can facilitate checks by allowing the user
> > > Fab> to specify an offset and length in the private data to match
> > > Fab> to for incoming requests.
> > >
> > > This seems too complex and at the same time too limited to me. For
> > > one thing -- although I think ATS should die -- this doesn't support
> > > ATS reverse lookups.
> >
> > I think if all ULPs provide their source and destination IP in the private
> > data, you can eliminate the reverse lookup altogether. A simple forward
> > lookup is all that's needed to validate that the source GID in the REQ
> > matches the reported source IP in the private data. The forward lookup
> > could be done via ATS or via ARP, but the CM doesn't need to care which
> > method is used.
>
> That is not an option.
>
> The applications are expecting source/destination network addresses
> that come from a network layer, not from the peer application. IP has
> no problem meeting this requirement. This is an IB problem that needs
> to be solved within the scope of IB without changing any ULPs.
If the app wants to use source/destination network addresses, there isn't a
problem. The problem is the app wants to use IP addresses, which are *not*
network addresses in IB. So the app needs to decide between one of two things -
be aware of IB network addresses, or provide meaning to IP addresses over IB.
The latter can't be done reliably under the covers - ATS reverse lookups won't
tell you the IP the source actually used, and there's no way to do so without
either using private data in the CM REQ or requiring a 1:1 mapping of IB:IP
addresses. The 1:1 IB:IP mapping is not feasible, so the only way to know what
IP address the application used is to embed that into the private data. I would
expect protocols that try to use IP as their addressing would accommodate this
in their IB usage, just like SDP accommodates it in the hello message.
- Fab
More information about the general
mailing list