англійськафранцузькаіспанська

Ad


Значок OnWorks

ibdmsh - Інтернет у хмарі

Запустіть ibdmsh у постачальника безкоштовного хостингу OnWorks через Ubuntu Online, Fedora Online, онлайн-емулятор Windows або онлайн-емулятор MAC OS

Це команда ibdmsh, яку можна запустити в постачальнику безкоштовного хостингу OnWorks за допомогою однієї з наших численних безкоштовних робочих станцій, таких як Ubuntu Online, Fedora Online, онлайн емулятор Windows або онлайн емулятор MAC OS

ПРОГРАМА:

ІМ'Я


ibdmsh МОДЕЛЬ ДАНИХ IB - Розширена оболонка TCL

ОПИС


ibdmsh це оболонка TCL, розширена інтерфейсом для моделі даних IB. Щоб використовувати цю оболонку
ви будете писати код TCL, який має прямий доступ до об'єктів і функцій моделі даних IB.

У наступних підрозділах надано детальне визначення цих об’єктів та API.

ІБДМ Константи


вузол типи

Наступні константи використовуються полем типу об’єкта вузла

[ Константа : 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

ІБДМ Глобальні


Рівень журналу: встановлено значення FABU_LOG*

[ Глобально : int ] $FabricUtilsVerboseLevel

ІБДМ Об'єкти


У цьому розділі описуються різні типи об’єктів, які відкриває IBDM.

IBDM розкриває деякі зі своїх внутрішніх об'єктів. Ідентифікатори об’єктів, що повертаються різними
виклики функцій форматуються відповідно до таких правил:

Тканина: тканина:

Система: система: :

SysPort: sysport: : :

вузол: вузол: :

Порт: порт: : /

Об'єкти IBDM - це стандартні об'єкти Swig-Tcl. Таким чином, вони мають два смаки для свого використання:
Змінні, об'єкти.

Змінні/вказівники:
Для кожного атрибута об’єкта передбачені методи «get» і «set».
Формат методів такий: _ _ .
Метод «set» доступний лише для атрибутів читання/запису.

приклад:
встановити вузли [ibdm_get_nodes]
встановити вузол [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
Фізичні порти визначаються номерами.

[ Дані члена: повертає int без знака ] -base_lid
Базова кришка призначена для порту.

[ Дані члена: повертає IBLinkWidth * ] -width
Ширина зв'язку порту

[ Дані учасників: повертає IBLinkSpeed ​​* ] -швидкість
Швидкість зв'язку порту

[ Дані члена: повертає int без знака ] -counter1
Загальне значення, яке використовується різними алгоритмами

[ Конструктор: повертає IBPort * ] Ім'я IBPort Номер p_nodePtr
Конструктор IBPort

[ Член : повертає new_uint64_t ] guid_get
Отримайте керівництво порту

[ Член : повертає void ] guid_set guid
Змініть напрямок порту

[ Член : повертає new_string ] getName
Отримати назву порту: повертається порт пристрою, підключений до системного порту (передня панель).
назва порту передньої панелі.

[ Член : повертає void ] connect p_otherPort ?width? ?швидкість?
Підключіть порт до порту іншого вузла з додатковими параметрами ширини та швидкості

[ Член : повертає int ] відключення
Від’єднайте порт. У разі успіху поверніть 0

клас IBNode

Клас IB Node представляє один пристрій IB (чіп)

[ Дані члена: повертає рядок * ] -ім'я
Назва вузла (назва екземпляра мікросхеми)

[ Дані члена: повертає IBNodeType ] -type
Або $IB_SW_NODE, або $IB_CA_NODE

[ Дані учасників: повертає uint16_t * ] -devId
Ідентифікатор пристрою вузла

[ Дані про учасників: повертає uint16_t * ] -revId
Ідентифікатор версії пристрою.

[ Дані про учасників: повертає uint16_t * ] -vendId
Ідентифікатор постачальника пристрою.

[ Дані члена: повертає рядок * ] -атрибути
Кома-sep рядок довільних атрибутів k=v

[ Дані про учасників: повертає uint8_t ] -ранг
Ранг вузла (0 - корінь)

[ Дані учасників: повертає IBSystem * ] -p_system
До якої системи ми належимо

[ Дані учасників: повертає IBFabric * ] -p_fabric
До якої тканини ми належимо.

[ Дані члена: повертає int без знака ] -numPorts
Кількість фізичних портів

[ Дані учасників: повертає vec_pport * ] -Порти
Вектор усіх портів

[ Дані учасників: повертає vec_vec_byte * ] -MinHopsTable
Таблиця кількості стрибків, необхідних для переходу від кожного порту до кожного цільового LID

[ Дані учасників: повертає vec_byte * ] -LFT
LFT цього вузла (лише для комутаторів), який є довгим вектором цільових портів -
індексом є LID

[ Член : повертає new_uint64_t ] guid_get
Отримайте GUID вузла

[ Член : повертає void ] guid_set guid
Встановіть GUID вузла

[ Конструктор: повертає IBNode * ] Ім'я IBNode n p_fab p_sys t np
Підрядник

[ Член : повертає IBPort * ] makePort num
Створіть новий порт за його номером (якщо потрібно) поверніть покажчик порту

[ Член : повертає IBPort * ] getPort num
Отримати порт за номером num = 1..N:

[ Член : повертає void ] setHops p_port lid hops
Встановіть мінімальний перехід для заданої пари кришки порту (* це все).

[ Член : повертає int ] getHops p_port lid
Отримайте мінімальну кількість переходів, визначену для даного порту або всіх

[ Член : повертає IBPort * ] кришку getFirstMinHopPort
Скануйте порти вузла та знайдіть перший порт за допомогою мінімального стрибка до кришки

[ Член : повертає void ] setLFTPortForLid кришка portNum
Встановіть таблицю лінійного пересилання для заданого LID

[ Член : повертає int ] кришку getLFTPortForLid
Отримайте LFT для заданого LID

[ Член : повертає void ] repHopTable
Викиньте таблицю min hop вузла

клас IBSysPort

Клас IBSysPort являє собою штекер IB на передній або задній панелях системи

[ Дані члена: повертає рядок * ] -ім'я
Назва передньої панелі (шовк) порту

[ Дані учасників: повертає IBSysPort * ] -p_remoteSysPort
Якщо підключено інший системний порт

[ Дані учасників: повертає IBSystem * ] -p_system
Система, до якої вона належить

[ Дані учасників: повертає IBPort * ] -p_nodePort
Порт вузла, до якого він підключається.

[ Конструктор: повертає IBSysPort * ] Ім'я IBSysPort n p_sys
Конструктор

[ Член : повертає void ] connect p_otherSysPort ?width? ?швидкість?
Підключіть два SysPort

[ Член : повертає int ] відключення
Від’єднайте SysPort (і порти). У разі успіху поверніть 0

клас IBSystem

Клас IBSystem являє собою ціле шасі

[ Дані члена: повертає рядок * ] -ім'я
Ім'я "хост" системи

[ Дані члена: повертає рядок * ] -тип
Який тип, наприклад, Cougar, Buffalo, MTS2400 тощо. Відповідний файл IBNL
має існувати - визначаючи цей тип системи

[ Дані учасників: повертає IBFabric * ] -p_fabric
Тканина, до якої належить система

[ Дані учасників: повертає map_str_pnode * ] -NodeByName
Введіть покажчик вузла за його назвою

[ Дані учасників: повертає map_str_psysport * ] -PortByName
Карта, що надає покажчик на SysPort за назвою

[ Конструктор: повертає IBSystem * ] Ім'я IBSystem n p_fab t
Підрядник

[ Член : повертає new_uint64_t ] guid_get
Отримайте GUID образу системи

[ Член : повертає void ] guid_set guid
Встановіть GUID образу системи

[ Член : повертає IBSysPort * ] makeSysPort pName
Переконайтеся, що порт визначено (тому визначте його, якщо ні)

[ Член : повертає IBPort * ] getSysPortNodePortByName sysPortName
Отримайте порт вузла для даного системного порту за назвою

[ Член : повертає IBSysPort * ] ім'я getSysPort
Отримайте порт Sys по імені

клас IBFabric

Являє собою всю підмережу IB, що складається з систем

[ Дані учасників: повертає map_str_pnode * ] -NodeByName
Надайте список пар імен вузлів і покажчиків

[ Дані учасників: повертає map_str_psys * ] -SystemByName
Надайте список пар імен системи та покажчиків

[ Дані учасників: повертає vec_pport * ] -PortByLid
Надає список імен системного порту та пар вказівників

[ Дані учасників: повертає map_guid_pnode * ] -NodeByGuid
Надає список пар направляючих і покажчиків вузлів

[ Дані учасників: повертає map_guid_psys * ] -SystemByGuid
Забезпечує список пар довідників із зображенням системи та вказівників системи

[ Дані учасників: повертає map_guid_pport * ] -PortByGuid
Надає список пар індикаторів портів і вказівників портів

[ Дані члена: повертає int без знака ] -minLid
Використана мінімальна кришка.

[ Дані члена: повертає int без знака ] -maxLid
Використана кришка Track Max.

[ Дані учасників: повертає int без знака ] -lmc
Використане значення LMC

[ Член : повертає IBNode * ] makeNode n тип p_sys numPorts
Отримати вузол за його назвою (створити один із не існує)

[ Член : повертає IBNode * ] ім'я getNode
Отримайте вузол за його назвою

[ Член : повертає list_pnode * ] тип getNodesByType
Повернути список покажчиків вузлів, що відповідають необхідному типу

[ Член : повертає IBSystem * ] ім'я makeGenericSystem
Створіть нову загальну систему - в основному порожній контейнер для вузлів...

[ Член : повертає IBSystem * ] тип імені makeSystem
Створіть нову систему - тип повинен мати зареєстровану фабрику.

[ Член : повертає IBSystem * ] ім'я getSystem
Отримати систему за назвою

[ Член : повертає IBSystem * ] getSystemByGuid guid
отримати систему за її напрямком

[ Член : повертає IBNode * ] getNodeByGuid guid
отримати вузол за його напрямною

[ Член : повертає IBPort * ] getPortByGuid guid
отримати порт за його напрямком

[ Член : повертає void ] addCable t1 n1 p1 t2 n2 p2 ?width? ?швидкість?
Додає кабель із двома наборами типу вузла, назви вузла та номера порту. За бажанням
використовуйте задану ширину та швидкість для з’єднання

[ Член : повертає int ] parseCables fn
Проаналізуйте файл кабелів і побудуйте тканину

[ Член : повертає int ] parseTopology fn
Проаналізуйте файл топології та побудуйте структуру

[ Член : повертає int ] addLink type1 numPorts1 sysGuid1 nodeGuid1 portGuid1 vend1
devId1 rev1 desc1 lid1 portNum1 type2 numPorts2 sysGuid2 nodeGuid2 portGuid2 vend2 devId2
rev2 desc2 lid2 portNum2 ?width? ?швидкість?
Додайте посилання в структуру - це створить систему та вузли за потребою.

[ Член : повертає int ] parseSubnetLinks fn
Проаналізуйте файл OpenSM subnet.lst і побудуйте з нього структуру.

[ Член : повертає int ] parseFdbFile fn
Проаналізуйте файл дампа OpenSM FDB і заповніть таблиці перемикачів LFT

[ Член : повертає int ] parseMCFdbFile fn
Проаналізуйте файл OpenSM MCFDBs і встановіть відповідним чином таблицю MFT

[ Член : повертає int ] parsePSLFile fn
Проаналізуйте шлях до файлу зіставлення SL. Кожен рядок із: src_node_guid DLID SL

Використовується для перевірки кредитного циклу

[ Член : повертає int ] parseSLVLFile fn
Проаналізуйте файл таблиць SLVL. Кожен рядок містить: sw_node_guid in_port out_port 0x(sl0)(sl1)
0x(sl2)(sl3)...

[ Член : повертає void ] setLidPort lid p_port
Встановіть порт кришки

[ Член : повертає IBPort * ] кришку getPortByLid
Отримайте портвейн за кришкою

[ повертає IBFabric * ] new_IBFabric
Побудуйте нову тканину

[ повертає void ] delete_IBFabric p_fabric
Знищити тканину

ІБДМ Функції


У цьому розділі надається детальна інформація про функції, які надає IBDM. Порядок слідує
очікуване замовлення в звичайному потоці IBDM. Усі вони повертають 0 за успіх.

Підмережа Комунальні послуги

Файл містить набір утиліт, які запускаються в підмережі для імітації ініціалізації OpenSM
і проаналізуйте результати:

[ повертає int ] ibdmAssignLids p_smNodePort ?lmc?
Призначте LID за допомогою додаткового LMC (кілька LID на порт)

[ повертає int ] ibdmCalcMinHopTables p_fabric
Розрахуйте та заповніть MinHopTables, необхідні для виконання маршрутизації в стилі OpenSM.

[ повертає int ] ibdmCalcUpDnMinHopTbls p_fabric rootNodesNameRex
Обчисліть та заповніть MinHopTables, дотримуючись правила Up/Down.

[ повертає int ] ibdmOsmRoute p_fabric
Направляйте тканину за допомогою маршрутизації в стилі OpenSM

[ повертає int ] ibdmEnhancedRoute p_fabric
Маршрутизуйте тканину за допомогою маршрутизації в стилі OpenSM, покращеної з кращою підтримкою LMC > 0

[ повертає int ] ibdmFatTreeRoute p_fabric rootNodes
Направляйте тканину за алгоритмом, який підходить тільки для повножирних дерев

[ повертає int ] ibdmFatTreeAnalysis p_fabric
Проаналізуйте тканину, щоб побачити, чи є вона жирним деревом, і направте її, якщо вона є

[ повертає int ] ibdmVerifyCAtoCARoutes p_fabric
Переконайтеся, що всі (H)CA підключені один до одного на основі налаштувань LFT

[ повертає int ] ibdmVerifyAllPaths p_fabric
Переконайтеся, що всі комутатори та (H)CA підключені один до одного на основі LFT
налаштування

[ повертає int ] ibdmAnalyzeLoops p_fabric
Ретельна перевірка кредитних петель. Цей алгоритм виконує повну та точну перевірку
але його звітність про шляхи кредитного циклу важко інтерпретувати. Якщо знати коріння
дерева (або дерево симетричне) краще використовувати
ibdmReportNonUpDownCa2CaPaths

[ повертає list_pnode ] ibdmFindSymmetricalTreeRoots p_fabric
Проаналізуйте топологію дерева і знайдіть коріння дерева на основі його симетрії

[ повертає list_pnode ] ibdmFindRootNodesByMinHop p_fabric
На основі MinHopTable знайдіть коріння дерева. Допускається 5% асиметрія

[ повертає int ] ibdmRankFabricByRoots p_fabric rootNodes
Враховуючи список кореневих вузлів (імена), ранжируйте вузли (корінь = 0)

[ повертає int ] ibdmReportNonUpDownCa2CaPaths p_fabric rootNodes
Проаналізуйте маршрути, щоб переконатися, що зберігається правило вгору/вниз

[ повертає int ] ibdmCheckMulticastGroups p_fabric
Перевірте підключення багатоадресної маршрутизації

[ повертає int ] ibdmCheckFabricMCGrpsForCreditLoopPotential p_fabric rootNodes
Проаналізуйте багатоадресну маршрутизацію, щоб переконатися, що вона відповідає правилу Up/Down

[ повертає int ] ibdmLinkCoverageAnalysis p_fabric rootNodes
Підготуйте розклад для передачі від набору джерел до адресатів, щоб
на кожному етапі немає посилань, які перевищують підписку, і після всіх етапів все
ланки тканини були оброблені

Простеження Комунальні послуги

Ці функції дозволяють відстежувати шляхи, повідомляючи про відвідувані вузли

[ повертає int ] ibdmTraceDRPathRoute p_smNodePort drPathPortNums
Простежте напрямок маршруту від заданого порту

[ повертає int ] ibdmTraceRouteByMinHops p_fabric slid dlid
Простежте шлях уздовж MinHop від вихідних до цільових LID

[ повертає int ] ibdmTraceRouteByLFT p_fabric slid dlid hops p_nodesList
Простежте шлях після LFT, оновлюючи змінні переходів і списку вузлів

Топологія Узгодження Комунальні послуги

Наступні утиліти відповідають двом структурам, що надають як повідомлення про невідповідність, так і a
уніфікована тканина

[ повертає int ] ibdmMatchFabrics p_spec_fabric p_discovered_fabric anchorNodeName
anchorPortNum anchorPortGuid
Установіть відповідність між тканиною на основі топології та знайденою, починаючи з порту закріплення

[ повертає int ] ibdmBuildMergedFabric p_spec_fabric p_discovered_fabric p_merged_fabric
Після зіставлення за допомогою ibdmMatchFabrics заповніть "об'єднану структуру" інформацією
об’єднано для відповідних вузлів

перевантаженість аналіз Комунальні послуги

Надайте можливість відстежувати перевищення підписки на посилання та повідомляти про них

[ повертає int ] ibdmCongInit p_fabric
Ініціалізуйте систему відстеження

[ повертає int ] ibdmCongCleanup p_fabric
Очистіть лічильники та звільніть

[ повертає int ] ibdmCongClear p_fabric
Прибирання лічильників

[ повертає int ] ibdmCongTrace p_fabric srcLid dstLid
Простежте шлях між LID, які оновлюють інформацію про використання посилання

[ повертає int ] ibdmCongReport p_fabric
Повідомте отриману інформацію про затор

[ повертає int ] ibdmCongDump p_fabric
Скиньте всю інформацію відстеження заторів

Використовуйте ibdmsh онлайн за допомогою служб onworks.net


Безкоштовні сервери та робочі станції

Завантажте програми для Windows і Linux

  • 1
    Жар-птиця
    Жар-птиця
    Firebird RDBMS пропонує функції ANSI SQL
    і працює на Linux, Windows і
    кілька платформ Unix. особливості
    чудова паралельність і продуктивність
    & потужність...
    Завантажити Firebird
  • 2
    KompoZer
    KompoZer
    KompoZer — це HTML-редактор wysiwyg, який використовує
    кодова база Mozilla Composer. Як
    Розвиток Nvu було зупинено
    у 2005 році KompoZer виправляє багато помилок і
    додає ф...
    Завантажити KompoZer
  • 3
    Безкоштовний завантажувач манги
    Безкоштовний завантажувач манги
    Безкоштовний завантажувач манги (FMD) є
    програма з відкритим кодом, написана
    Object-Pascal для управління і
    завантаження манги з різних веб-сайтів.
    Це дзеркало...
    Завантажте безкоштовний завантажувач манги
  • 4
    Aetbootin
    Aetbootin
    UNetbootin дозволяє створювати завантажувальні програми
    Живі USB-накопичувачі для Ubuntu, Fedora та
    інші дистрибутиви Linux без
    запис компакт-диска. Він працює на Windows, Linux,
    і ...
    Завантажити UNetbootin
  • 5
    Dolibarr ERP - CRM
    Dolibarr ERP - CRM
    Dolibarr ERP - CRM проста у використанні
    Пакет програмного забезпечення з відкритим кодом ERP і CRM
    (запустити з веб-сервером php або як
    автономне програмне забезпечення) для бізнесу,
    основи...
    Завантажити Dolibarr ERP - CRM
  • 6
    SQL-клієнт SQuirreL
    SQL-клієнт SQuirreL
    SQuirreL SQL Client — це графічний SQL
    клієнт, написаний на Java, що дозволить
    Ви можете переглянути структуру JDBC
    сумісна база даних, переглядайте дані в
    столи...
    Завантажте клієнт SQuirreL SQL
  • Детальніше »

Команди Linux

Ad