ນີ້ແມ່ນຄໍາສັ່ງ ibdmsh ທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນຫຼາຍໆບ່ອນເຮັດວຽກອອນໄລນ໌ຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator
ໂຄງການ:
NAME
ibdmsh IB DATA Model - Extended TCL shell
ລາຍລະອຽດ
ibdmsh ແມ່ນ TCL shell ຂະຫຍາຍດ້ວຍການໂຕ້ຕອບສໍາລັບຮູບແບບຂໍ້ມູນ IB. ເພື່ອໃຊ້ເປືອກນີ້
ທ່ານຈະຂຽນລະຫັດ TCL ທີ່ໂດຍກົງເຂົ້າເຖິງວັດຖຸຕົວແບບຂໍ້ມູນ IB ແລະຫນ້າທີ່.
ພາກສ່ວນຍ່ອຍຕໍ່ໄປນີ້ໃຫ້ຄໍານິຍາມລະອຽດສໍາລັບວັດຖຸເຫຼົ່ານັ້ນ ແລະ API.
IBDM ຄົງທີ່
node ປະເພດ
ຄ່າຄົງທີ່ຕໍ່ໄປນີ້ຖືກໃຊ້ໂດຍຊ່ອງປະເພດວັດຖຸຂອງຂໍ້
[ຄົງທີ່ : int ] $IB_UNKNOWN_NODE_TYPE = IB_UNKNOWN_NODE_TYPE
[ ຄົງທີ່ : int ] $IB_SW_NODE = IB_SW_NODE
[ ຄົງທີ່ : int ] $IB_CA_NODE = IB_CA_NODE
ຕົວເຊັນເຂົ້າ ວາຈາ ທົງ
ຄ່າຄົງທີ່ຕໍ່ໄປນີ້ຖືກໃຊ້ເປັນບິດອາກິວເມັນສຳລັບຕົວແປທົ່ວໂລກ
$FabricUtilsVerboseLevel
[ ຄົງທີ່ : int ] $FABU_LOG_NONE = 0x0
[ ຄົງທີ່ : int ] $FABU_LOG_ERROR = 0x1
[ ຄົງທີ່ : int ] $FABU_LOG_INFO = 0x2
[ ຄົງທີ່ : int ] $FABU_LOG_VERBOSE = 0x4
IBDM ໂລກ
ລະດັບບັນທຶກ: ຕັ້ງເປັນຄ່າ FABU_LOG*
[ Global : int ] $FabricUtilsVerboseLevel
IBDM ຈຸດປະສົງ
ພາກນີ້ອະທິບາຍປະເພດວັດຖຸຕ່າງໆທີ່ຖືກເປີດເຜີຍໂດຍ IBDM.
IBDM ເປີດເຜີຍບາງວັດຖຸພາຍໃນຂອງມັນ. ຕົວລະບຸວັດຖຸທີ່ສົ່ງຄືນໂດຍຕ່າງໆ
ການໂທຟັງຊັນຖືກຈັດຮູບແບບຕາມກົດລະບຽບຕໍ່ໄປນີ້:
ຜ້າ: fabric:
ລະບົບ: ລະບົບ: :
SysPort: sysport: : :
Node: node: :
ພອດ: ພອດ: : /
IBDM Objects ແມ່ນວັດຖຸ Swig-Tcl ມາດຕະຖານ. ດັ່ງນັ້ນພວກມັນມີສອງລົດຊາດສໍາລັບການນໍາໃຊ້ຂອງພວກເຂົາ:
ຕົວແປ, ວັດຖຸ.
ຕົວແປ/ຕົວຊີ້:
ສໍາລັບແຕ່ລະວັດຖຸຄຸນລັກສະນະ "ໄດ້ຮັບ" ແລະ "ຕັ້ງ" ວິທີການແມ່ນສະຫນອງໃຫ້.
ຮູບແບບຂອງວິທີການແມ່ນ: _ _ .
ວິທີການ "ຕັ້ງ" ແມ່ນມີພຽງແຕ່ສໍາລັບຄຸນລັກສະນະການອ່ານ / ຂຽນ.
ຕົວຢ່າງ:
ຕັ້ງ nodes [ibdm_get_nodes]
ຕັ້ງ node [lindex $nodes 0]
IBNode_numPorts_get $node
ວັດຖຸ:
ເມື່ອຕົວຊີ້ວັດຖຸສາມາດປ່ຽນມັນເປັນ Tcl "Object"
ການນໍາໃຊ້ຄໍາສັ່ງດັ່ງຕໍ່ໄປນີ້:
- ນີ້
ເມື່ອປະກາດວ່າ ສາມາດນໍາໃຊ້ຮ່ວມກັບ
ດ້ວຍຄໍາສັ່ງ "configure" ແລະ "cget" ມາດຕະຖານ.
ຕົວຢ່າງ (ປະຕິບັດຕາມອັນທີ່ແລ້ວ):
IBFabric VaTech - ຜ້າ $ ນີ້
VaTech cget -NodeByName
ເພື່ອລຶບສັນຍາລັກວັດຖຸ (ແລະເປີດໃຊ້ງານການສ້າງແຜນທີ່ຂອງຕົນກັບອັນອື່ນ
ຕົວຊີ້ວັດ) ການນໍາໃຊ້:
ປ່ຽນຊື່ ""
ຍົກຕົວຢ່າງ:
ປ່ຽນຊື່ VaTech ""
ລະດັບ IBPort
ຕໍ່ໄປນີ້ແມ່ນຊ່ອງຂໍ້ມູນແລະວິທີການທີ່ແຕກຕ່າງກັນຂອງຊັ້ນ IB Port ທີ່ອະທິບາຍເຖິງ
ອຸປະກອນ IB (ຊິບ) ພອດທາງດ້ານຮ່າງກາຍ.
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ IBPort * ] -p_remotePort
ພອດເຊື່ອມຕໍ່ຢູ່ອີກດ້ານຫນຶ່ງຂອງການເຊື່ອມຕໍ່
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ IBSysPort * ] -p_sysPort
ພອດລະບົບ (ຖ້າມີ) ເຊື່ອມຕໍ່ກັບ
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ IBNode * ] -p_node
ໂຫນດທີ່ພອດແມ່ນສ່ວນຫນຶ່ງຂອງ.
[ ຂໍ້ມູນສະມາຊິກ: ກັບຄືນ int ] -num
ພອດທາງກາຍະພາບແມ່ນຖືກກໍານົດໂດຍຕົວເລກ.
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ unsigned int ] -base_lid
ຝາປິດພື້ນຖານໄດ້ມອບຫມາຍໃສ່ພອດ.
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ IBLinkWidth * ] -width
ຄວາມກວ້າງຂອງການເຊື່ອມຕໍ່ຂອງພອດ
[ ຂໍ້ມູນສະມາຊິກ: ກັບຄືນ IBLinkSpeed * ] -speed
ຄວາມໄວເຊື່ອມຕໍ່ຂອງພອດ
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ unsigned int ] -counter1
ຄ່າທົ່ວໄປທີ່ຈະໃຊ້ໂດຍວິທີຕ່າງໆ
[ Constructor: ສົ່ງຄືນ IBPort * ] ຊື່ IBPort p_nodePtr number
ຜູ້ກໍ່ສ້າງ IBPort
[ ສະມາຊິກ : ສົ່ງຄືນ new_uint64_t ] guid_get
ໄດ້ຮັບຄໍາແນະນໍາຂອງທ່າເຮືອ
[ ສະມາຊິກ : ກັບຄືນ void ] guid_set guid
ແກ້ໄຂຄູ່ມືຂອງພອດ
[ ສະມາຊິກ : ສົ່ງຄືນ new_string ] getName
ເອົາຊື່ຜອດ: ພອດອຸປະກອນທີ່ເຊື່ອມຕໍ່ກັບພອດລະບົບ (ແຜງໜ້າ) ກັບຄືນມາ
ຊື່ຜອດແຜງໜ້າ.
[ ສະມາຊິກ : returns void ] ເຊື່ອມຕໍ່ p_otherPort ?width? ?ຄວາມໄວ?
ເຊື່ອມຕໍ່ພອດກັບພອດ node ອື່ນທີ່ມີຄວາມກວ້າງທາງເລືອກແລະຕົວກໍານົດຄວາມໄວ
[ສະມາຊິກ : returns int ] ຕັດການເຊື່ອມຕໍ່
ຕັດການເຊື່ອມຕໍ່ພອດ. ກັບຄືນ 0 ຖ້າສໍາເລັດ
ລະດັບ IBNode
ຫ້ອງຮຽນ IB Node ເປັນຕົວແທນອຸປະກອນ IB ດຽວ (ຊິບ)
[ ຂໍ້ມູນສະມາຊິກ: returns string * ] -name
ຊື່ຂອງໂນດ (ຊື່ຕົວຢ່າງຂອງຊິບ)
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ IBNodeType ] -type
$IB_SW_NODE ຫຼື $IB_CA_NODE
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ uint16_t * ] -devId
ID ອຸປະກອນຂອງ node
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ uint16_t * ] -revId
ID ການແກ້ໄຂອຸປະກອນ.
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ uint16_t * ] -vendId
ID ຜູ້ຂາຍອຸປະກອນ.
[ ຂໍ້ມູນສະມາຊິກ: returns string * ] -attributes
ສະຕຣິງເຄື່ອງໝາຍຈຸດ-sep ຂອງຄຸນສົມບັດສິນລະທຳ k=v
[ຂໍ້ມູນສະມາຊິກ: ກັບຄືນ uint8_t ] -rank
ອັນດັບຂອງ node (0 ເປັນຮາກ)
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ IBSsystem * ] -p_system
ພວກເຮົາຢູ່ໃນລະບົບໃດ
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ IBFabric * ] -p_fabric
ຜ້າອັນໃດທີ່ພວກເຮົາເປັນຂອງ.
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ unsigned int ] -numPorts
ຈໍານວນຂອງພອດທາງດ້ານຮ່າງກາຍ
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ vec_pport * ] -ພອດ
vector ຂອງພອດທັງຫມົດ
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ vec_vec_byte * ] -MinHopsTable
ຕາຕະລາງຂອງຈໍານວນ hops ທີ່ຕ້ອງການເພື່ອໃຫ້ໄດ້ຮັບຈາກແຕ່ລະພອດໄປຫາແຕ່ລະ LID ເປົ້າຫມາຍ
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ vec_byte * ] -LFT
LFT ຂອງ node (ສໍາລັບ switches ເທົ່ານັ້ນ) ເຊິ່ງເປັນ vector ຍາວຂອງພອດເປົ້າຫມາຍ -
ດັດຊະນີແມ່ນຝາປິດ
[ ສະມາຊິກ : ສົ່ງຄືນ new_uint64_t ] guid_get
ໄດ້ຮັບ node GUID
[ ສະມາຊິກ : ກັບຄືນ void ] guid_set guid
ກໍານົດ node GUID
[ Constructor: ສົ່ງຄືນ IBNode * ] IBNode ຊື່ n p_fab p_sys t np
ຜູ້ຮັບເໝົາ
[ ສະມາຊິກ : ສົ່ງຄືນ IBPort * ] makePort num
ສ້າງພອດໃໝ່ຕາມຕົວເລກຂອງມັນ (ຖ້າຕ້ອງການ) ສົ່ງຄືນຕົວຊີ້ພອດ
[ ສະມາຊິກ : ສົ່ງຄືນ IBPort * ] getPort num
ເອົາພອດໂດຍຕົວເລກ = 1..N:
[ສະມາຊິກ : returns void ] setHops p_port lid hops
ກໍານົດ min hop ສໍາລັບພອດທີ່ໃຫ້ (* ແມ່ນທັງຫມົດ) ຄູ່ຝາ
[ສະມາຊິກ : returns int ] getHops p_port lid
ເອົາຈໍານວນ hops ຕໍ່າສຸດທີ່ກໍານົດສໍາລັບພອດທີ່ໃຫ້ຫຼືທັງຫມົດ
[ ສະມາຊິກ : ສົ່ງຄືນ IBPort * ] getFirstMinHopPort lid
ສະແກນປອດ node ແລະຊອກຫາພອດທໍາອິດທີ່ມີ min hop ໄປຫາຝາປິດ
[ ສະມາຊິກ : ກັບຄືນ void ] setLFTPortForLid lid portNum
ກໍານົດຕາຕະລາງການສົ່ງຕໍ່ Linear ສໍາລັບ LID ທີ່ໃຫ້
[ ສະມາຊິກ : returns int ] getLFTPortForLid lid
ເອົາ LFT ສໍາລັບຝາປິດທີ່ໃຫ້
[ສະມາຊິກ : ກັບຄືນ void ] repHopTable
ຖິ້ມຕາຕະລາງ min hop ຂອງ node
ລະດັບ IBSysPort
ຫ້ອງຮຽນ IBSysPort ເປັນຕົວແທນຂອງປລັກ IB ຢູ່ໃນແຜງດ້ານໜ້າ ຫຼືດ້ານຫຼັງຂອງລະບົບ
[ ຂໍ້ມູນສະມາຊິກ: returns string * ] -name
ຊື່ pannel ດ້ານຫນ້າ (ຜ້າໄຫມ) ຂອງພອດ
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ IBSysPort * ] -p_remoteSysPort
ຖ້າເຊື່ອມຕໍ່ອີກຂ້າງ sys port
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ IBSsystem * ] -p_system
ລະບົບມັນດີ
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ IBPort * ] -p_nodePort
ພອດ node ທີ່ມັນເຊື່ອມຕໍ່ກັບ.
[ Constructor : ສົ່ງຄືນ IBSysPort * ] ຊື່ IBSysPort n p_sys
ຜູ້ກໍ່ສ້າງ
[ສະມາຊິກ : returns void ] ເຊື່ອມຕໍ່ p_otherSysPort ?width? ?ຄວາມໄວ?
ເຊື່ອມຕໍ່ສອງ SysPorts
[ສະມາຊິກ : returns int ] ຕັດການເຊື່ອມຕໍ່
ຕັດການເຊື່ອມຕໍ່ SysPort (ແລະພອດ). ກັບຄືນ 0 ຖ້າສໍາເລັດ
ລະດັບ ລະບົບ IBS
ຫ້ອງຮຽນ IBSystem ເປັນຕົວແທນຂອງ chassis ທັງຫມົດ
[ ຂໍ້ມູນສະມາຊິກ: returns string * ] -name
ຊື່ "ເຈົ້າພາບ" ຂອງລະບົບ
[ ຂໍ້ມູນສະມາຊິກ: returns string * ] -type
ແມ່ນຫຍັງຄື Cougar, Buffalo, MTS2400, ແລະອື່ນໆ. ໄຟລ໌ IBNL ທີ່ສອດຄ້ອງກັນ
ຄວນມີຢູ່ - ການກໍານົດປະເພດຂອງລະບົບນີ້
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ IBFabric * ] -p_fabric
ຜ້າລະບົບເປັນຂອງ
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ map_str_pnode * ] -NodeByName
ໃຫ້ node pointer ຕາມຊື່ຂອງມັນ
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ map_str_psysport * ] -PortByName
ແຜນທີ່ສະຫນອງຕົວຊີ້ໄປຫາ SysPort ໂດຍຊື່
[ Constructor : returns IBSystem * ] ຊື່ລະບົບ IBS n p_fab t
ຜູ້ຮັບເໝົາ
[ ສະມາຊິກ : ສົ່ງຄືນ new_uint64_t ] guid_get
ໄດ້ຮັບຮູບພາບລະບົບ GUID
[ ສະມາຊິກ : ກັບຄືນ void ] guid_set guid
ກໍານົດ GUID ຮູບພາບລະບົບ
[ສະມາຊິກ : ສົ່ງຄືນ IBSysPort * ] makeSysPort pName
ໃຫ້ແນ່ໃຈວ່າພວກເຮົາໄດ້ກໍານົດພອດ (ດັ່ງນັ້ນກໍານົດມັນຖ້າບໍ່ແມ່ນ)
[ ສະມາຊິກ : ສົ່ງຄືນ IBPort * ] getSysPortNodePortByName sysPortName
ເອົາພອດ node ສໍາລັບພອດ sys ທີ່ລະບຸໄວ້ຕາມຊື່
[ສະມາຊິກ : ສົ່ງຄືນ IBSysPort * ] getSysPort ຊື່
ເອົາ Sys Port ຕາມຊື່
ລະດັບ IBFabric
ເປັນຕົວແທນຂອງເຄືອຂ່າຍຍ່ອຍ IB ທັງໝົດທີ່ເຮັດດ້ວຍລະບົບ
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ map_str_pnode * ] -NodeByName
ໃຫ້ບັນຊີລາຍຊື່ຂອງຊື່ node ແລະຄູ່ pointer
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ map_str_psys * ] -SystemByName
ໃຫ້ບັນຊີລາຍຊື່ຂອງຊື່ລະບົບແລະຄູ່ຕົວຊີ້
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ vec_pport * ] -PortByLid
ສະໜອງລາຍການຊື່ພອດລະບົບ ແລະຄູ່ຕົວຊີ້
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ map_guid_pnode * ] -NodeByGuid
ສະຫນອງບັນຊີລາຍຊື່ຂອງ node guid ແລະ node pointer ຄູ່
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ map_guid_psys * ] -SystemByGuid
ສະໜອງລາຍການຄູ່ມືຮູບພາບລະບົບ ແລະຄູ່ຕົວຊີ້ລະບົບ
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ map_guid_pport * ] -PortByGuid
ສະຫນອງບັນຊີລາຍຊື່ຂອງຄູ່ມືພອດແລະຄູ່ຕົວຊີ້ພອດ
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ unsigned int ] -minLid
ຕິດຕາມຝາປິດທີ່ໃຊ້ແລ້ວ.
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ unsigned int ] -maxLid
ຕິດຕາມຝາສູງສຸດທີ່ໃຊ້ແລ້ວ.
[ ຂໍ້ມູນສະມາຊິກ: ສົ່ງຄືນ unsigned int ] -lmc
ໃຊ້ຄ່າ LMC
[ ສະມາຊິກ : ກັບຄືນ IBNode * ] makeNode n p_sys ປະເພດ numPorts
ເອົາ node ໂດຍຊື່ຂອງມັນ (ສ້າງອັນໃດອັນນຶ່ງທີ່ບໍ່ມີຢູ່)
[ ສະມາຊິກ : ສົ່ງຄືນ IBNode * ] getNode ຊື່
ເອົາ node ໂດຍຊື່ຂອງມັນ
[ ສະມາຊິກ : returns list_pnode * ] getNodesByType type
ສົ່ງຄືນລາຍຊື່ຂອງຕົວຊີ້ node ທີ່ກົງກັບປະເພດທີ່ຕ້ອງການ
[ສະມາຊິກ : ສົ່ງຄືນ IBSystem * ] makeGenericSystem ຊື່
ສ້າງລະບົບທົ່ວໄປໃຫມ່ - ໂດຍພື້ນຖານແລ້ວເປັນ container ຫວ່າງເປົ່າສໍາລັບ nodes ...
[ສະມາຊິກ : ສົ່ງຄືນ IBSystem * ] ເຮັດໃຫ້ປະເພດຊື່ລະບົບ
ສ້າງລະບົບໃຫມ່ - ປະເພດຕ້ອງມີໂຮງງານລົງທະບຽນ.
[ ສະມາຊິກ : ສົ່ງຄືນ IBSystem * ] getSystem name
ໄດ້ຮັບລະບົບໂດຍຊື່
[ ສະມາຊິກ : ສົ່ງຄືນ IBSystem * ] getSystemByGuid guid
ໄດ້ຮັບລະບົບໂດຍການຊີ້ນໍາຂອງຕົນ
[ ສະມາຊິກ : ສົ່ງຄືນ IBNode * ] getNodeByGuid guid
ໄດ້ຮັບ node ໂດຍຄໍາແນະນໍາຂອງມັນ
[ ສະມາຊິກ : ສົ່ງຄືນ IBPort * ] getPortByGuid guid
ໄດ້ຮັບທ່າເຮືອໂດຍການຊີ້ນໍາຂອງຕົນ
[ ສະມາຊິກ : returns void ] addCable t1 n1 p1 t2 n2 p2 ?width? ?ຄວາມໄວ?
ເພີ່ມສາຍເຄເບີນທີ່ໃຫ້ສອງຊຸດຂອງປະເພດ node, ຊື່ node ແລະໝາຍເລກຜອດ. ທາງເລືອກ
ໃຊ້ຄວາມກວ້າງແລະຄວາມໄວທີ່ໃຫ້ສໍາລັບການເຊື່ອມຕໍ່
[ ສະມາຊິກ : returns int ] parseCables fn
ແຍກໄຟລ໌ສາຍແລະສ້າງຜ້າ
[ ສະມາຊິກ : returns int ] parseTopology fn
Parse Topology File ແລະສ້າງ fabric ໄດ້
[ ສະມາຊິກ : returns int ] addLink type1 numPorts1 sysGuid1 nodeGuid1 portGuid1 vend1
devId1 rev1 desc1 lid1 portNum1 type2 numPorts2 sysGuid2 nodeGuid2 portGuid2 vend2 devId2
rev2 desc2 lid2 portNum2 ?ຄວາມກວ້າງ? ?ຄວາມໄວ?
ເພີ່ມການເຊື່ອມຕໍ່ເຂົ້າໄປໃນຜ້າ - ນີ້ຈະສ້າງລະບົບແລະຂໍ້ຕາມຄວາມຕ້ອງການ.
[ ສະມາຊິກ : returns int ] parseSubnetLinks fn
ແຍກໄຟລ໌ OpenSM subnet.lst ແລະສ້າງ fabric ຈາກມັນ.
[ ສະມາຊິກ : returns int ] parseFdbFile fn
Parse OpenSM FDB dump file ແລະຕື່ມຂໍ້ມູນໃສ່ໃນ switches ຕາຕະລາງ LFT
[ ສະມາຊິກ : returns int ] parseMCFdbFile fn
ວິເຄາະໄຟລ໌ OpenSM MCFDBs ແລະກໍານົດຕາຕະລາງ MFT ຕາມຄວາມເຫມາະສົມ
[ ສະມາຊິກ : returns int ] parsePSLFile fn
ແຍກເສັ້ນທາງໄປຫາໄຟລ໌ແຜນທີ່ SL. ແຕ່ລະແຖວທີ່ມີ: src_node_guid DLID SL
ໃຊ້ໂດຍການກວດສອບວົງສິນເຊື່ອ
[ ສະມາຊິກ : returns int ] parseSLVLFile fn
ແຍກໄຟລ໌ຕາຕະລາງ SLVL. ແຕ່ລະແຖວຖື: sw_node_guid in_port out_port 0x(sl0)(sl1)
0x(sl2)(sl3)...
[ສະມາຊິກ : ກັບຄືນ void ] setLidPort lid p_port
ຕັ້ງພອດຝາ
[ ສະມາຊິກ : ສົ່ງຄືນ IBPort * ] getPortByLid lid
ເອົາພອດໂດຍຝາປິດ
[ ສົ່ງຄືນ IBFabric * ] new_IBFabric
ກໍ່ສ້າງຜ້າໃຫມ່
[ກັບຄືນ void] delete_IBFabric p_fabric
ທໍາລາຍຜ້າ
IBDM ຫນ້າທີ່
ພາກນີ້ໃຫ້ລາຍລະອຽດກ່ຽວກັບຫນ້າທີ່ IBDM exposes. ຄໍາສັ່ງປະຕິບັດຕາມ
ຄໍາສັ່ງທີ່ຄາດວ່າຈະຢູ່ໃນກະແສ IBDM ປົກກະຕິ. ພວກເຂົາທັງຫມົດກັບຄືນມາ 0 ໃນຄວາມສໍາເລັດ.
ເຄືອຂ່າຍຍ່ອຍ ລະນູປະໂພກ
ໄຟລ໌ນີ້ຖືຊຸດຂອງຜົນປະໂຫຍດທີ່ຈະດໍາເນີນການຢູ່ໃນເຄືອຂ່າຍຍ່ອຍເພື່ອ mimic ການເລີ່ມຕົ້ນ OpenSM
ແລະວິເຄາະຜົນໄດ້ຮັບ:
[ returns int ] ibdmAssignLids p_smNodePort ?lmc?
ກຳນົດຝາປິດດ້ວຍ LMC ທາງເລືອກ (ຫຼາຍຝາຕໍ່ພອດ)
[ returns int ] ibdmCalcMinHopTables p_fabric
ຄິດໄລ່ແລະຕື່ມຂໍ້ມູນໃສ່ MinHopTables ທີ່ຕ້ອງການສໍາລັບການແລ່ນເສັ້ນທາງແບບ OpenSM.
[ returns int ] ibdmCalcUpDnMinHopTbls p_fabric rootNodesNameRex
ຄິດໄລ່ແລະຕື່ມຂໍ້ມູນໃສ່ MinHopTables ຕາມກົດລະບຽບ Up/Down.
[ returns int ] ibdmOsmRoute p_fabric
ກຳນົດເສັ້ນທາງຂອງຜ້າດ້ວຍການກຳນົດເສັ້ນທາງແບບ OpenSM
[ returns int ] ibdmEnhancedRoute p_fabric
ກຳນົດເສັ້ນທາງຂອງຜ້າດ້ວຍການກຳນົດເສັ້ນທາງແບບ OpenSM ທີ່ປັບປຸງດ້ວຍການຮອງຮັບທີ່ດີຂຶ້ນສຳລັບ LMC > 0
[ returns int ] ibdmFatTreeRoute p_fabric rootNodes
ກໍານົດເສັ້ນທາງຂອງຜ້າໂດຍໃຊ້ສູດການຄິດໄລ່ທີ່ເຫມາະກັບຕົ້ນໄມ້ທີ່ມີໄຂມັນເຕັມ
[ returns int ] ibdmFatTreeAnalysis p_fabric
ວິເຄາະຜ້າເພື່ອເບິ່ງວ່າມັນເປັນຕົ້ນໄມ້ໄຂມັນແລະເສັ້ນທາງມັນຖ້າມັນເປັນ
[ returns int ] ibdmVerifyCAtoCARoutes p_fabric
ໃຫ້ແນ່ໃຈວ່າ (H)CAs ທັງໝົດເຊື່ອມຕໍ່ຫາກັນໂດຍອີງຕາມການຕັ້ງຄ່າ LFT
[ returns int ] ibdmVerifyAllPaths p_fabric
ໃຫ້ແນ່ໃຈວ່າທຸກ Switches ແລະ (H)CAs ເຊື່ອມຕໍ່ກັນໂດຍອີງໃສ່ LFT
ການຕັ້ງຄ່າ
[ returns int ] ibdmAnalyzeLoops p_fabric
ການກວດສອບຢ່າງເຂັ້ມງວດສໍາລັບວົງເງິນສິນເຊື່ອ. ສູດການຄິດໄລ່ນີ້ເຮັດການກວດສອບຢ່າງເຕັມທີ່ແລະຖືກຕ້ອງ
ແຕ່ການລາຍງານເສັ້ນທາງສິນເຊື່ອຂອງມັນເປັນເລື່ອງຍາກທີ່ຈະຕີຄວາມໝາຍ. ຖ້າເຈົ້າຮູ້ຮາກ
ຂອງຕົ້ນໄມ້ (ຫຼືຕົ້ນໄມ້ແມ່ນສົມມາດ) ມັນມັກໃຊ້
ibdmReportNonUpDownCa2CaPaths
[ returns list_pnode ] ibdmFindSymmetricalTreeRoots p_fabric
ວິເຄາະ topology ຂອງຕົ້ນໄມ້ແລະຊອກຫາຮາກຂອງຕົ້ນໄມ້ໂດຍອີງໃສ່ symmetry ຂອງມັນ
[ returns list_pnode ] ibdmFindRootNodesByMinHop p_fabric
ອີງໃສ່ MinHopTable ຊອກຫາຮາກຂອງຕົ້ນໄມ້. A 5% assymetry ແມ່ນອະນຸຍາດໃຫ້
[ returns int ] ibdmRankFabricByRoots p_fabric rootNodes
ໃຫ້ບັນຊີລາຍຊື່ຂອງຂໍ້ຮາກ (ຊື່) ຈັດອັນດັບຂອງຂໍ້ (ຮາກ = 0)
[ returns int ] ibdmReportNonUpDownCa2CaPaths p_fabric rootNodes
ວິເຄາະເສັ້ນທາງເພື່ອໃຫ້ແນ່ໃຈວ່າກົດຂຶ້ນ/ລົງຖືກຮັກສາໄວ້
[ returns int ] ibdmCheckMulticastGroups p_fabric
ກວດສອບການເຊື່ອມຕໍ່ຂອງ multicast routing
[ returns int ] ibdmCheckFabricMCGrpsForCreditLoopPotential p_fabric rootNodes
ວິເຄາະການກຳນົດເສັ້ນທາງແບບ multicast ເພື່ອໃຫ້ແນ່ໃຈວ່າມັນປະຕິບັດຕາມກົດລະບຽບຂຶ້ນ/ລົງ
[ returns int ] ibdmLinkCoverageAnalysis p_fabric rootNodes
ກະກຽມຕາຕະລາງການສົ່ງຕໍ່ຈາກຊຸດຂອງແຫຼ່ງໄປຫາຈຸດຫມາຍປາຍທາງດັ່ງກ່າວ
ໃນແຕ່ລະຂັ້ນຕອນຂອງການບໍ່ມີການເຊື່ອມຕໍ່ທີ່ມີຫຼາຍກ່ວາການສະຫມັກແລະຫຼັງຈາກທຸກຂັ້ນຕອນທັງຫມົດ
ການເຊື່ອມຕໍ່ຂອງ fabric ໄດ້ excersized
ການຕິດຕາມ ລະນູປະໂພກ
ຟັງຊັນເຫຼົ່ານີ້ອະນຸຍາດໃຫ້ຕິດຕາມເສັ້ນທາງທີ່ລາຍງານກັບຄືນໄປບ່ອນຂອງຂໍ້ທີ່ໄປຢ້ຽມຢາມ
[ returns int ] ibdmTraceDRPathRoute p_smNodePort drPathPortNums
ຕິດຕາມເສັ້ນທາງການຊີ້ນໍາຈາກພອດທີ່ໄດ້ຮັບ
[ returns int ] ibdmTraceRouteByMinHops p_fabric slide dlid
ຕິດຕາມເສັ້ນທາງຕາມ MinHop ຈາກແຫຼ່ງໄປຫາ LIDs ປາຍທາງ
[ returns int ] ibdmTraceRouteByLFT p_fabric slid dlid hops p_nodesList
ຕິດຕາມເສັ້ນທາງທີ່ປະຕິບັດຕາມ LFT ປັບປຸງຕົວແປລາຍຊື່ hops ແລະ node
Topology ການຈັບຄູ່ ລະນູປະໂພກ
ຜົນປະໂຫຍດຕໍ່ໄປນີ້ກົງກັນສອງ fabrics ສະຫນອງຂໍ້ຄວາມບໍ່ກົງກັນແລະ a
ຜ້າເອກະພາບ
[ returns int ] ibdmMatchFabrics p_spec_fabric p_discovered_fabric anchorNodeName
anchorPortNum anchorPortGuid
ຈັບຄູ່ຜ້າທີ່ອີງໃສ່ topology ກັບອັນທີ່ຄົ້ນພົບໂດຍເລີ່ມຕົ້ນທີ່ພອດ enchor
[ returns int ] ibdmBuildMergedFabric p_spec_fabric p_discovered_fabric p_merged_fabric
ຫຼັງຈາກການຈັບຄູ່ການນໍາໃຊ້ ibdmMatchFabrics populate "ຜ້າລວມ" ທີ່ມີຂໍ້ມູນ
ຮວມເຂົ້າກັນສຳລັບຂໍ້ທີ່ກົງກັນ
ການລະຄາຍເຄືອງ ການວິເຄາະ ລະນູປະໂພກ
ສະຫນອງຄວາມສາມາດໃນການຕິດຕາມແລະລາຍງານການເຊື່ອມຕໍ່ oversubscription
[ returns int ] ibdmCongInit p_fabric
ເລີ່ມຕົ້ນລະບົບການຕິດຕາມ
[ returns int ] ibdmCongCleanup p_fabric
ທໍາຄວາມສະອາດເຄົາເຕີແລະຈັດການ
[ returns int ] ibdmCongClear p_fabric
ເຄົາເຕີທໍາຄວາມສະອາດ
[ returns int ] ibdmCongTrace p_fabric srcLid dstLid
ຕິດຕາມເສັ້ນທາງລະຫວ່າງ LIDs ການປັບປຸງຂໍ້ມູນການນໍາໃຊ້ເຊື່ອມຕໍ່
[ returns int ] ibdmCongReport p_fabric
ລາຍງານຂໍ້ມູນຄວາມແອອັດທີ່ເກີດຂຶ້ນ
[ returns int ] ibdmCongDump p_fabric
ຖິ້ມຂໍ້ມູນການຕິດຕາມຄວາມແອອັດທັງໝົດ
ໃຊ້ ibdmsh ອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net