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 > [email protected] > http://openib.org/mailman/listinfo/openib-general > > To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general _______________________________________________ openib-general mailing list [email protected] http://openib.org/mailman/listinfo/openib-general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general
