1.1 KEYS
IBA使用各種Key來提供隔離和保護。 Key是管理實體分配的值瞻想,以各種方式用于消息中压真。Key本身不提供安全性,因為Key在跨結(jié)構(gòu)的消息中可用蘑险,因此可以進入結(jié)構(gòu)內(nèi)部的任何實體都可以確定密鑰值滴肿。 IBA限制了應(yīng)用程序訪問某些密鑰的方式。
Management Key (M_Key):子網(wǎng)管理器執(zhí)行控制的工具佃迄,由子網(wǎng)管理器管理并且包含在某些子網(wǎng)管理的數(shù)據(jù)包里泼差。每個通道適配器端口都具有一個由SM控制并使能的 M_Key贵少。SM可以為每個端口分配不同的Key。 啟用后堆缘,端口將拒絕某些不包含已規(guī)劃 M_Key 的管理數(shù)據(jù)包滔灶。 因此,只有帶有已規(guī)劃M_Key的SM才能更改節(jié)點的網(wǎng)絡(luò)配置吼肥。 只要SM處于存活狀態(tài)录平,SM就會阻止端口的M_Key被讀取。 端口將保持超時特性缀皱,以便在SM發(fā)生故障時將端口恢復(fù)為非托管狀態(tài)斗这。 一個交換機有一個M_Key。
Baseboard Management Key (B_Key):加強子網(wǎng)底板管理器的控制啤斗。 由子網(wǎng)底板管理器管理表箭,并在某些MAD中使用。 每個通道適配器端口都有一個B_Key钮莲,由基板管理器設(shè)置免钻。 基板管理器可以為每個端口分配不同的Key。 啟用后崔拥,端口將拒絕某些不包含已規(guī)劃B_Key的管理數(shù)據(jù)包极舔。 因此,只有具有已規(guī)劃B_Key的基板管理器才能更改節(jié)點的基板配置握童。 只要基板管理器處于存活狀態(tài),基板管理器就可以防止讀取端口的B_Key叛赚。 端口具備保持超時特性澡绩,以便在底板管理器發(fā)生故障時將端口恢復(fù)為非托管狀態(tài)。交換機有一個B_Key俺附。
Partition Key (P_Key):Enforce Membership肥卡。 由分區(qū)管理器(PM)通過子網(wǎng)管理器進行管理。 每個通道適配器端口都包含一個由PM設(shè)置的分區(qū)鍵表事镣。同一區(qū)域的QP可以通過配置進行通信(QP0步鉴,QP1和為原始數(shù)據(jù)報配置的端口除外),因此P_Key包含在每個IB傳輸數(shù)據(jù)包中璃哟。 通信建立過程包含的一步為確定一個特定QP或EEC使用哪個P_Key氛琢。 EEC包含可靠數(shù)據(jù)報服務(wù)的P_Key,而QP上下文包含其他IBA傳輸類型的P_Key随闪。 QP或EEC中的P_Key放在每個發(fā)送的數(shù)據(jù)包中阳似,并與每個接收到的數(shù)據(jù)包中的P_Key進行比較。 接收的數(shù)據(jù)包會進行P_Key對比铐伴,一旦不同將會被拒絕撮奏。 每個交換機都有一個用于管理消息的P_Key表俏讹,并且可以根據(jù)該表通過P_Key過濾數(shù)據(jù)包。
Memory Keys (L_Key and R_Key):包含L_Key and R_Key畜吊,啟用虛擬地址的使用泽疆,并為使用者提供一種控制對其內(nèi)存的訪問的機制。 這些Key由通道適配器通過注冊過程進行管理玲献。 使用者向通道適配器注冊內(nèi)存區(qū)域殉疼,并接收L_Key和R_Key。 使用者在工作請求中使用L_Key向QP描述本地內(nèi)存青自,并將R_Key傳遞給遠程使用者以用于RDMA操作株依。 當(dāng)使用者將RDMA操作排隊時,它指定從遠程使用者傳遞給它的R_Key延窜,并且R_Key包含在到原始通道適配器的RDMA請求數(shù)據(jù)包中恋腕。 R_Key驗證發(fā)送方訪問目標(biāo)內(nèi)存的權(quán)利,并為目標(biāo)通道適配器提供將虛擬地址轉(zhuǎn)換為物理地址的方法逆瑞。