MyWebUniversity.com Home Page
 



OpenSolaris man pages main menu


Devices                                                   ibd(7D)



NAME
     ibd - Infiniband IPoIB device driver

SYNOPSIS
     /dev/ibd*


DESCRIPTION
     The ibd driver implements the IETF IP over Infiniband proto-
     col  and provides IPoIB service for all IBA ports present in
     the system.


     The ibd driver  is  a  multi-threaded,  loadable,  clonable,
     STREAMS  hardware  driver supporting the connectionless Data
     Link Provider Interface, dlpi(7P)). The ibd driver  provides
     basic  support  for  the  IBA Unreliable Datagram Queue Pair
     hardware.  Functions  include   QP   initialization,   frame
     transmit  and  receive,  multicast and promiscuous mode sup-
     port, and statistics reporting.


     Use the cloning, character-special device /dev/ibd to access
     all ibd devices installed within the system.


     The ibd driver is dependent on GLD, a loadable kernel module
     that provides the ibd driver with the DLPI and STREAMS func-
     tionality required of a LAN driver. Except as noted  in  the
     Application  Programming  Interface section of this manpage,
     see gld(7D) for more details on the primitives supported  by
     the    driver.    The    GLD    module    is    located   at
     /kernel/misc/sparcv9/gld  on   64   bit   systems   and   at
     /kernel/misc/gld on 32 bit systems.


     The ibd driver expects  certain  configuration  of  the  IBA
     fabric prior to operation (which also implies the SM must be
     active and managing the fabric). Specifically, the IBA  mul-
     ticast group representing the IPv4 limited broadcast address
     255.255.255.255 (also defined as broadcast-GID in IETF docu-
     ments) must be created prior to initializing the device. IBA
     properties (including mtu, qkey and sl)  of  this  group  is
     used  by  the driver to create any other IBA multicast group
     as instructed by higher  level  (IP)  software.  The  driver
     probes  for  the  existance  of  this  broadcast-GID  during
     attach(9E).

APLICATION PROGRAMING INTERFACE (DLPI)
     The values returned by the driver in the DLINFOACK  primi-
     tive in response to your DLINFOREQ are:




SunOS 5.11          Last change: 20 Jul 2007                    1






Devices                                                   ibd(7D)



         o    Maximum  SDU  is  the  MTU  associated   with   the
              broadcast-GID group, less the 4 byte IPoIB header.

         o    Minimum SDU is 0.

         o    dlsap address length is 22.

         o    MAC type is DLIB.

         o    The sap length value is -2,  meaning  the  physical
              address  component  is followed immediately by a 2-
              byte sap component within the DLSAP address.

         o    Broadcast address value is the MAC address consist-
              ing  of the 4 bytes of QPN 00:F:F:F prepended to
              the IBA multicast address of the broadcast-GID.

              Due to the nature of link  address  definition  for
              IPoIB,  the  DLSETPHYSADREQ DLPI primitive is
              not supported.

              In the transmit case for streams that have been put
              in raw mode via the DLIOCRAW ioctl, the DLPI appli-
              cation must prepend the 20 byte  IPoIB  destination
              address  to the data it wants to transmit over-the-
              wire. In the receive case, applications receive the
              IP/ARP  datagram along with the IETF defined 4 byte
              header.

WARNING
     This section describes warning messages that might  be  gen-
     erated  by  the driver. Please note that while the format of
     these messages may be modified in future versions, the  same
     general information will be provided.


     While joining IBA multicast groups corresponding to IP  mul-
     ticast groups as part of multicast promiscuous operations as
     required by IP multicast routers,  or  as  part  of  running
     snoop(1M),  it  is  possible  that  joins  to some multicast
     groups can fail due to inherent resource constraints in  the
     IBA  components.  In  such cases, warning message similar to
     the following appear  in  the  system  log,  indicating  the
     interface on which the failure occurred:

       NOTICE: ibd0: Could not get list of IBA multicast groups
       NOTICE: ibd0: IBA promiscuous mode missed multicast group
       NOTICE: ibd0: IBA promiscuous mode missed new multicast gid







SunOS 5.11          Last change: 20 Jul 2007                    2






Devices                                                   ibd(7D)



     Also, if the IBA SM indicates that multicast trap support is
     suspended or unavailable, the system log  contains a message
     similar to:

       NOTICE: ibd0: IBA multicast support degraded due to
       unavailability of multicast traps



     And when the SM indicates trap support is restored:

       NOTICE: ibd0: IBA multicast support restored due to
       availability of multicast traps



     Additionally, if the IBA link transitions to an  unavailable
     state (that is, the IBA link state becomes "Down," "Initial-
     ize" or "Armed") and then becomes active again,  the  driver
     tries  to  rejoin  previously  joined  groups  if  required.
     Failure to rejoin multicast  groups  will  trigger  messages
     like:

       NOTICE: ibd0: Failure on port up to rejoin multicast gid



     If the corresponding HCA port is in  the  unavailable  state
     defined  above  when  initializing  an  ibd  interface using
     ifconfig(1M), a message is emitted by the driver:

       NOTICE: ibd0: Port is not active



     Further, as described above, if  the  broadcast-GID  is  not
     found,  or  the  associated  MTU is higher than what the HCA
     port can support, the following messages are printed to  the
     system log:

       NOTICE: ibd0: IPoIB broadcast group absent
       NOTICE: ibd0: IPoIB broadcast group MTU 4096 greater than port's
       maximum MTU 2048



     In  all  cases  of  these  reported  problems  when  running
     ifconfig(1M),  it  should  be  checked  that  IBA cabling is
     intact, an SM is running on the fabric, and  the  broadcast-
     GID  with appropriate properties has been created in the IBA
     partition.




SunOS 5.11          Last change: 20 Jul 2007                    3






Devices                                                   ibd(7D)



CONFIGURATION
     The IPoIB service comes preconfigured on all  HCA  ports  in
     the  system. To turn the service off, or back on after turn-
     ing it off, refer to documentation in cfgadmib(1M).

FILES
     /dev/ibd*                  special character device


     /kernel/drv/ib.conf        configuration file to start IPoIB
                                service


     /kernel/drv/sparcv9/ibd    64-bit SPARC device driver


     /kernel/drv/amd64/ibd      64-bit x86 device driver


     /kernel/drv/ibd            32-bit x86 device driver


SEE ALSO
     cfgadm(1M),   cfgadmib(1M),   ifconfig(1M),    syslogd(1M),
     gld(7D),  ib(7D),  kstat(7D), streamio(7I), dlpi(7P), attri-
     butes(5), attach(9E)

NOTES
     IBD is  a  GLD-based  driver  and  provides  the  statistics
     described  by  gld(7D). Note that valid received packets not
     accepted  by  any  stream  (long)  will  increase  when  IBD
     transmits  broadcast  IP  packets.  This happens because the
     infiniband hardware copies and loops  back  the  transmitted
     broadcast packets to the source. These packets are discarded
     by GLD and are recorded as 'unknowns'.




















SunOS 5.11          Last change: 20 Jul 2007                    4



OpenSolaris man pages main menu

Contact us      |       About us      |       Term of use      |       Copyright © 2000-2010 MyWebUniversity.com ™