]> CyberLeo.Net >> Repos - FreeBSD/releng/9.2.git/blob - contrib/ofed/management/opensm/doc/modular-routing.txt
- Copy stable/9 to releng/9.2 as part of the 9.2-RELEASE cycle.
[FreeBSD/releng/9.2.git] / contrib / ofed / management / opensm / doc / modular-routing.txt
1 Modular Routine Engine
2
3 Modular routing engine structure has been added to allow
4 for ease of "plugging" new routing modules.
5
6 Currently, only unicast callbacks are supported. Multicast
7 can be added later.
8
9 One of existing routing modules is up-down "updn", which may
10 be activated with '-R updn' option (instead of old '-u').
11
12 General usage is:
13 $ opensm -R 'module-name'
14
15 There is also a trivial routing module which is able
16 to load LFT tables from a file.
17
18 Main features:
19
20 - this will load switch LFTs and/or LID matrices (min hops tables)
21 - this will load switch LFTs according to the path entries introduced in
22   the file
23 - no additional checks will be performed (such as "is port connected", etc.)
24 - in case when fabric LIDs were changed this will try to reconstruct LFTs
25   correctly if endport GUIDs are represented in the file (in order
26   to disable this GUIDs may be removed from the file or zeroed)
27
28 The file format is compatible with output of 'ibroute' util and for
29 whole fabric may be generated with script like this:
30
31   for sw_lid in `ibswitches | awk '{print $NF}'` ; do
32         ibroute $sw_lid
33   done > /path/to/lfts_file
34
35 , or using DR paths:
36
37   for sw_dr in `ibnetdiscover -v \
38                 | sed -ne '/^DR path .* switch /s/^DR path \[\(.*\)\].*$/\1/p' \
39                 | sed -e 's/\]\[/,/g' \
40                 | sort -u` ; do
41         ibroute -D ${sw_dr}
42   done > /path/to/lfts_file
43
44 This script is dump_lfts.sh
45
46 In order to activate new module use:
47
48   opensm -R file -U /path/to/lfts_file
49
50 If the lfts_file is not found or is in error, the default routing
51 algorithm is utilized.
52
53 The ability to dump switch lid matrices (aka min hops tables) to file and
54 later to load these is also supported.
55
56 The usage is similar to unicast forwarding tables loading from a lfts
57 file (introduced by 'file' routing engine), but new lid matrix file
58 name should be specified by -M or --lid_matrix_file option. For example:
59
60   opensm -R file -M ./opensm-lid-matrix.dump
61
62 The dump file is named 'opensm-lid-matrix.dump' and will be generated in
63 standard opensm dump directory (/var/log by default) when
64 OSM_LOG_ROUTING logging flag is set.
65
66 When routing engine 'file' is activated, but the lfts file is not specified
67 or cannot be opened, the default lid matrix algorithm will be used.
68
69 There is also a switch forwarding tables dumper which generates
70 a file compatible with dump_lfts.sh output. This file can be used
71 as input for forwarding tables loading by 'file' routing engine.
72 Both or one of options -U and -M can be specified together with '-R file'.
73
74 NOTE: ibroute has been updated (for switch management ports) to support this.
75 Also, lmc was added to switch management ports. ibroute needs to be r7855 or
76 later from the trunk.
77