[openib-general] IB Address Translation service
shaharf
shaharf at voltaire.com
Mon Feb 28 10:00:31 PST 2005
> This API seems overly complex and at the same time too inflexible to
> me. However, rather than getting bogged down nitpicking about APIs, I
> think we have to take a few steps back.
>
I am very open to suggestions.
> First, let's understand the problem we're trying to solve. Who are
> the consumers of this address translation service?
>
Any ULPs at user & kernel, and also some applications. The motivations
are:
1. Implement central address resolution functionality to enable
implementing system policies and preferences for all clients (e.g. use
ATS instead of IB-ARP)
2. Enable the (future) implementation of resolution related enhancements
such as qos mapping, several port/path fail over mechanisms (APM, port
fail over, application fail over, etc.) and source routing (enable smart
client based source ports/paths by ensuring some agreed semantics within
the lid range.
I think that we can agree that there is no use to replicate the
functionality within application and ULPs.
> Second, let's come up with the right architecture to solve the
> problem. Are we implementing a library in userspace or a kernel
> module? Do we have a single cache or do we need multiple caching
> policies? And so on...
>
My take right now is to implement a kernel based mechanism and a user
mode library to interface it.
There are other feasible solutions. I would really like you have your
suggestions and preferences.
The caching issues are non-trivial (to say the least). My approach is to
set up the minimum requirements that will enable caching in the (near)
future.
I guess that the interface will be changed and enhanced to support the
caching. It will be nice to close this issue before the implementation,
but I don't think that this is mandatory. Very frequently you can't
simply design everything before you start. The trick is to find the
correct balance.
> Finally, we can design the API.
>
I think that starting with the APIs is a valid approach that has its own
advantages and disadvantages.
Right now, the proposed interface does not impose anything. It is just a
direction to start with. This is good even just to place the cards on
the table and start the discussion.
> Thanks,
> Roland
>
Shahar
More information about the general
mailing list