1DAT.CONF(5)                                                        DAT.CONF(5)
2
3
4

NAME

6       dat.conf - configuration file for static registration of user-level DAT
7       rdma providers
8

DESCRIPTION

10       The DAT (direct access transport) architecture supports the use of mul‐
11       tiple  DAT  providers  within a single consumer application.  Consumers
12       implicitly select a provider using the Interface Adapter name parameter
13       passed to dat_ia_open().
14
15       The subsystem that maps Interface Adapter names to provider implementa‐
16       tions  is  known  as  the  DAT  registry.   When   a   consumer   calls
17       dat_ia_open(),  the  appropriate  provider is found and notified of the
18       consumer's request to access the IA. After  this  point,  all  DAT  API
19       calls acting on DAT objects are automatically directed to the appropri‐
20       ate provider entry points.
21
22       A persistent, administratively configurable database is used  to  store
23       mappings  from IA names to provider information. This provider informa‐
24       tion includes: the file system path to  the  provider  library  object,
25       version  information,  and  thread safety information. The location and
26       format of the registry is platform dependent. This database is known as
27       the  Static  Registry  (SR) and is provided via entries in the dat.conf
28       file. The process of adding a provider entry is termed Static Registra‐
29       tion.
30

Registry File Format

32
33           * All characters after # on a line are ignored (comments).
34           * Lines on which there are no characters other than whitespace
35             and comments are considered blank lines and are ignored.
36           * Non-blank lines must have seven whitespace separated fields.
37             These fields may contain whitespace if the field is quoted
38             with double quotes. Within fields quoated with double quotes,
39             the backslash or qoute are valid escape sequences:
40           * Each non-blank line will contain the following fields:
41               - The IA Name.
42               - The API version of the library:
43                 [k|u]major.minor where "major" and "minor" are both integers
44                 in decimal format. User-level examples: "u1.2", and "u2.0".
45               -  Whether  the  library is thread-safe: [threadsafe|nonthread‐
46       safe]
47               - Whether this is the default section: [default|nondefault]
48               - The library image, version included, to be loaded.
49               - The vendor id and version of DAPL provider: id.major.minor
50               - ia params, IA specific parameters - device name and port
51               - platform params, (not used)
52

OpenFabrics RDMA providers:

54
55           Provider options for both 1.2 and 2.0, each using different CM ser‐
56       vices
57
58               1.  cma  -  OpenFabrics  rdma_cm    - uses rdma_cm services for
59       connections
60                                               - requires IPoIB and SA/SM ser‐
61       vices for IB
62                                               -  netdev used for device name,
63       without port designation (ia_params)
64                                               -   Supports   any    transport
65       rdma_cm supports including IB, iWARP, RoCEE
66                                               -   libdaplcma.so  (1.2),  lib‐
67       daplofa (2.0)
68
69               2. scm - uDAPL socket based CM  - exchanges CM information over
70       sockets
71                                               -   eliminates   the  need  for
72       rdma_cm, IPoIB, and SA for IB
73                                               - verbs device used for  device
74       name with port designation (ia_param)
75                                               -  Supports  IB, RoCEE. Doesn't
76       support iWARP
77                                               -  libdaplscm.so  (1.2),   lib‐
78       daploscm (2.0)
79
80               3.  ucm - uDAPL unreliable IB CM - exchanges CM information via
81       IB UD QP's
82                                               - eliminates the need for sock‐
83       ets or rdma_cm
84                                               -  verbs device used for device
85       name with port designation (ia_param)
86                                               - Supports  IB  only,  no  name
87       service.
88                                               -   libdaplucm.so  (1.2),  lib‐
89       daploucm (2.0)
90

Example entries for each OpenFabrics provider

92
93
94               1. cma - OpenFarbrics rdma_cm (v1.2 and v2.0 examples)
95
96               OpenIB-cma u1.2 nonthreadsafe default libdaplcma.so.1  dapl.1.2
97       "ib0 0" ""
98               ofa-v2-ib0  u2.0 nonthreadsafe default libdaplofa.so.2 dapl.2.0
99       "ib0 0" ""
100               ofa-v2-iwarp   u2.0   nonthreadsafe   default   libdaplofa.so.2
101       dapl.2.0 "eth2 0" ""
102               ofa-v2-cma-roe-eth2  u2.0 nonthreadsafe default libdaplofa.so.2
103       dapl.2.0 "eth2 0" ""
104               ofa-v2-cma-roe-eth3 u2.0 nonthreadsafe default  libdaplofa.so.2
105       dapl.2.0 "eth3 0" ""
106
107               NOTE:  The OpenFabrics CMA providers use <ia_params> to specify
108       the device with one of the following:
109                     network address, network hostname, or netdev name;  along
110       with port number.
111
112               2. scm - uDAPL socket based CM (v1.2 and v2.0 examples)
113
114               OpenIB-mlx4_0-1   u1.2  nonthreadsafe  default  libdaplscm.so.1
115       dapl.1.2 "mlx4_0 1" ""
116               OpenIB-ipath0-1  u1.2  nonthreadsafe  default   libdaplscm.so.1
117       dapl.1.2 "ipath0 1" ""
118               ofa-v2-mlx4_0-1  u2.0  nonthreadsafe  default  libdaploscm.so.2
119       dapl.2.0 "mlx4_0 1" ""
120               ofa-v2-mlx4_0-2  u2.0  nonthreadsafe  default  libdaploscm.so.2
121       dapl.2.0 "mlx4_0 2" ""
122               ofa-v2-mlx4_1-1  u2.0  nonthreadsafe  default  libdaploscm.so.2
123       dapl.2.0 "mlx4_1 1" ""
124               ofa-v2-ehca0-1  u2.0  nonthreadsafe  default   libdaploscm.so.2
125       dapl.2.0 "ehca0 1" ""
126               ofa-v2-scm-roe-mlx4_0-1   u2.0   nonthreadsafe   default   lib‐
127       daploscm.so.2 dapl.2.0 "mlx4_0 1" ""
128
129               3. ucm - uDAPL unreliable IB CM  (not supported  in  1.2,  v2.0
130       examples)
131
132               ofa-v2-mlx4_0-1u  u2.0  nonthreadsafe  default libdaploucm.so.2
133       dapl.2.0 "mlx4_0 1" ""
134               ofa-v2-mlx4_0-2u u2.0  nonthreadsafe  default  libdaploucm.so.2
135       dapl.2.0 "mlx4_0 2" ""
136               ofa-v2-ipath0-1u  u2.0  nonthreadsafe  default libdaploucm.so.2
137       dapl.2.0 "ipath0 1" ""
138               ofa-v2-ehca0-1u  u2.0  nonthreadsafe  default  libdaploucm.so.2
139       dapl.2.0 "ehca0 1" ""
140
141               Note:  OpenIB-  and  ofa-v2-  IA  names  are  unique  mappings,
142       reserved for OpenFabrics providers.
143
144       The default location for this configuration file is /etc/dat.conf.
145
146       The file location may  be  overridden  with  the  environment  variable
147       DAT_OVERRIDE=/your_own_directory/your_dat.conf.
148

SEE ALSO rdma_cm verbs socket

150                                 25 March 2008                     DAT.CONF(5)
Impressum