Open FCoE

RHEL6 有提供 Fibre-Channel over Ethernet (FCoE) Target Set up 可以使用軟體的方式建立 FCoE Target 的儲存裝置.

主要會用到的指令是 lldpad , dcbtool , fcoemon 以及 targetcli

Qlogic CNA QLE2672 (EP8324)

我使用了 Qlogic CNA QLE2672 ,但是照著 RHEL6 提供的步驟,做到第四不就無法繼續下去了.

# dcbtool sc ethX dcb on
Command:        Set Config
Feature:        DCB State
Port:           eth1
Status:         Device not found, link down or DCB not enabled

/var/log/messages 會出現

# cat /var/log/messages
Oct 21 15:46:18 RHEL6-1 lldpad: bound ctrl iface to /com/intel/lldpad
Oct 21 15:46:23 RHEL6-1 fcoemon: error 111 Connection refused
Oct 21 15:46:23 RHEL6-1 fcoemon: Failed write req P len 1


Intel x520 (82599)

後來查到 Intel Open Fibre Channel over Ethernet (FCoE) 應該是有搭配的卡才能做.

The Open FCoE solution with Intel’s X520 family of adapters (如下所示)

  • Intel® Ethernet Server Adapter X520-SR1
  • Intel® Ethernet Server Adapter X520-DA2
  • Intel® Ethernet Server Adapter X520-SR2

但試完還是一樣不行. <-- 有支援 VN2VN


後來我同事建議我去查一個協定 FC-BB-6 ,查完才知道為什麼??

雖然 FCoE 主要是將 Fiber Channel 的資料封裝在 Ethernet ,在做 FCoE 傳輸時實際上會用到 2 種協定 Protocol 1.FC 初始化協定(FIP: FC Initialization Protocol)和 2. FCoE(Fibre Channel over Ethernet) 協定. 問題是出在 FIP 這個協定在 Discovery 階段時 Provides visibility between ENodes and FCFs (FC Forwarder) 與 Login 階段時 Creates association between ENode and FCF 都必須要有 FCF (FC Forwarder) 存在.
我們來看一下 FCoE 的拓譜網路圖.
圖片出自於 networking/JohnHufferd_FCoE_Direct_End_Node.pdf

在 拓譜網路圖 1, 2 都存在 FCoE switch 所以 FIP 在使用 FCF 是沒有問題的,但拓譜網路圖 3 時 FIP 在使用 FCF 時會出現問題( Qlogic QLE2672 只支援 FC-BB-5 ,官方網站沒有說明倒是在 Cisco 的 datasheet_2600.pdf 有說明),所以在 FC-BB-6 定義了一個新的 FCoE Direct End Node to End Node(也叫 FCoE VN2VN) 的連結方式.有支援 VN2VN 的時候才能使用 拓譜網路圖 3.

關於 VN2VN 與 VN2VF 請參考 Q&A 也很清楚的點出 VN2VN 和 VN2VF 的差異.
Question #6: Please explain difference between VN2VN and VN2VF
Answer #6: The currently deployed version of FCoE, T11 FC-BB-5, requires that every endpoint, or Enode in FC-speak, connect with the “fabric,” a Fibre Channel Forwarder (FCF) more specifically. That’s VN2VF. What FC-BB-6 adds is the capability for an endpoint to connect directly to other endpoints without an FCF between them. That’s VN2VN.

下面詳細說明了 FCoE w/o VN2VN 與 FCoE w/ VN2VN 的差異性

FIP Protocol for FCoE/VN2VN Networks(FC-BB-6)

Discovery Phase

  • FCoE (w/o VN2VN)
    • FCFs Discover each other & form a Fabric
    • ENodes Discover FCFs & Potential VN_Port <- -> VF_Port pariring
  • FCoE VN2VN
    VN2VN capable ENodes Discover each other

Login Phase

  • FCoE (w/o VN2VN)
    ENodes chose among discovered FCFs’ Ports for Virtual Link connections
  • FCoE VN2VN
    VN2VN capable ENodes chose among discovered VN2VN Ports for Virtual Link connections