Blame doc/OpenSM_PKey_Mgr.txt

Packit 13e616
OpenSM Partition Management
Packit 13e616
---------------------------
Packit 13e616
Packit 13e616
Roadmap:
Packit 13e616
Phase 1 - provide partition management at the EndPort (HCA, Router and Switch
Packit 13e616
          Port 0) level with no routing affects.
Packit 13e616
Phase 2 - routing engine should take partitions into account.
Packit 13e616
Packit 13e616
Phase 1 functionality:
Packit 13e616
Packit 13e616
Supported Policy:
Packit 13e616
Packit 13e616
1. EndPort partition groups are to be defined by listing the
Packit 13e616
   PortGUIDs as full and limited members.
Packit 13e616
Packit 13e616
2. Each partition group might be assigned an explicit P_Key (only the 15
Packit 13e616
   LSB bits are valid) or the SM should assign it randomly.
Packit 13e616
Packit 13e616
3. A flag should control the generation of IPoIB broadcast group for
Packit 13e616
   that partition. Extra optional MGIDs can be provided to be setup (on
Packit 13e616
   top of the IPoIB broadcast group).
Packit 13e616
Packit 13e616
4. A global flag "Disconnect Unconfigured EndPorts": If TRUE prevents
Packit 13e616
   EndPorts that are not explicitly defined as part of any partition
Packit 13e616
   (thus "unconfigured") to communicate with any other EndPort. Otherwise, it
Packit 13e616
   will let these EndPorts send packets to all other EndPorts.
Packit 13e616
Packit 13e616
Functionality:
Packit 13e616
Packit 13e616
1. The policy should be updated:
Packit 13e616
   - during SM bringup
Packit 13e616
   - after kill -HUP
Packit 13e616
   - through SNMP (once it is supported)
Packit 13e616
Packit 13e616
2. Partition tables will be updated on full sweep (new port/trap etc).
Packit 13e616
   As a first step, the policy feasibility should be
Packit 13e616
   verified. Feasibility could be limited by the EndPorts supports for
Packit 13e616
   number of partitions, etc. Unrealizable policy should be reported
Packit 13e616
   and extra rules ignored after providing error messages.
Packit 13e616
Packit 13e616
3. Each EndPort will be assigned P_Keys as follows:
Packit 13e616
Packit 13e616
   a. Default partition group limited membership as defined by rule #4 below.
Packit 13e616
     (only the SM port will get 0xffff).
Packit 13e616
Packit 13e616
   b. P_Keys for all partition groups it is part of as defined in
Packit 13e616
      the policy.
Packit 13e616
Packit 13e616
   c. P_Key update will preserve index for the existing P_Keys on the
Packit 13e616
      port. If port has limited resources that will require reuse of,
Packit 13e616
      on index a message will be provided and some of the settings will be
Packit 13e616
      ommitted. P_Key indexes will not change under any circumstances.
Packit 13e616
Packit 13e616
4. Each Switch Leaf Port (a switch port that is connected to an
Packit 13e616
   EndPort) should be configured according to the same rules that
Packit 13e616
   apply to the EndPort connected to that switch port.
Packit 13e616
   This actually enables unauthorized port isolation (with future
Packit 13e616
   usage of M_Key and ProtectBits).
Packit 13e616
Packit 13e616
5. Policy entries matching a non EndPort will be flagged as
Packit 13e616
   erroneous in the log file and ignored.
Packit 13e616
Packit 13e616
6. At the end of the P_Key setting phase, a check for successful
Packit 13e616
   setting should be made.
Packit 13e616
   Errors should be clearly logged and cause a new sweep.
Packit 13e616
Packit 13e616
7. Each partition that is marked to support IPoIB should define a
Packit 13e616
   broadcast MGRP. If the partition does not support IPoIB, it should
Packit 13e616
   define a dummy MGRP with parameters blocking IPoIB drivers from
Packit 13e616
   registering to it.
Packit 13e616
Packit 13e616
Phase 2 functionality:
Packit 13e616
Packit 13e616
The partition policy should be considered during the routing such that
Packit 13e616
links are associated with particular partition or a set of
Packit 13e616
partitions. Policy should be enhanced to provide hints for how to do
Packit 13e616
that (correlating to QoS too). The exact algorithm is TBD.
Packit 13e616