[openib-general] mapping between IP address and device name
Kevin Reilly
kjreilly at us.ibm.com
Wed Jun 22 20:16:49 PDT 2005
Hal and others, thanks for your responses.
This kernel IBAT looks like it provides the function to map an IP address
of an network interface to the device name and port
number. My reluctance is i don't think is accessible for the user space
library. We would need to have a kernel model to help
us do the translation. Is there any plans to make it accessible to from
user space?
I would expect that mapped in both directions from the device name used to
open a device to IP address will be very useful for
many reason like debug.
Kevin J. Reilly
STSM, HPC Architecture
-Federation/HPS Chief Engineer
-HPC interconnect architect
(office) 845-433-7976 (tieline) 8-293-7976
Hal Rosenstock
<halr at voltaire.co
m> To
Kevin Reilly/Poughkeepsie/IBM at IBMUS
06/21/2005 09:05 cc
AM openib-general at openib.org
Subject
Re: [openib-general] mapping
between IP address and device name
Hi Kevin,
On Mon, 2005-06-20 at 22:23, Kevin Reilly wrote:
> Maybe somebody could help me understand the proper way to map between an
IP
> address assigned to a port to the
> "device name" and "port number" in the gen2 architecture. If I have an
IP
> address can I map it to a name that i get back
> from ibv_get_device_name() or pass to ibv_open_device().
> Here is the problem. Let's say there is a subsystem that
used
> heartbeating over IP interfaces to ascertain the adapters
> and ports state, up or down. The data actively maintained be
this
> heartbeating subsystem is used by a job scheduler that
> desires to only schedule tasks on HCAs that are UP and have active
ports.
> The job scheduler does not want to launch jobs
> on adapters that are broken, not connected to a switch or not configured.
> The job scheduler needs a way to map an IP address into a name
and
> port number sitable to be passed to the job to
> use when ibv_open_device() is called or to match the output
of
> ibv_get_device_name().
With kernel IB Address Translation (IBAT), you can resolve an IP address
(remote or local) and obtain the device and port are obtained from the
ib_route structure.
ib_at_route_by_ip:
* ib_at_route_by_ip - asynchronously resolve ip route to ib route
* @dst_ip: destination ip
* @src_ip: source ip - optional
* @tos: ip type of service
* @flags: ib_at_route_flags
* @ib_route: out structure
* @async_comp: asynchronous callback structure - optional
*
* Resolve the specified dst_ip to a &struct ib_route structure.
* src_ip can be provided to force specific output interface.
* flags can be used to select resolving method; currently IB-ARP or ATS.
and then:
* ib_at_paths_by_route - asynchronously resolve ib route to ib path
records
* @ib_route: ib route to resolve
* @mpath_type: ib_at_multipathing_type
* @path_arr: SA path record array - out
* @npath: maximal number of paths to return
* @async_comp: asynchronous callback structure - optional
*
* Resolve the specified ib_route to a SA path record array.
* Number of returned paths will not exceed npath.
* Multipathing type may be used to obtain redundant paths for APM,
* other failover schemes, bandwidth aggregation or source based routing.
* Note that multipathing request is meaningless unless npath is greater
than 1.
*
* Returned ib_route structure includes the recommended pkey and qos_tag
for
* this route.
IBAT is not currently in the OpenIB trunk. See
users/jlentini/linux-kernel/patches/ib_at.h or
branches/shaharf-ibat/src/linux-kernel/infiniband/include/ib_at.h for
more details.
-- Hal
> Kevin J. Reilly
> STSM, HPC Architecture
> -Federation/HPS Chief Engineer
> -HPC interconnect architect
> (office) 845-433-7976 (tieline) 8-293-7976
>
> _______________________________________________
> 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