← Documents Documentation/ABI/testing/sysfs-bus-fcoe GitHub 원문 ↗

Linux 6.18.37 · ABI / testing

FCoE bus sysfs ABI

FCoE controller의 생성·설정·활성화·제거 절차, LESB counters, Fibre Channel Forwarder 속성과 device-loss state 전이를 설명합니다.

Source pathDocumentation/ABI/testing/sysfs-bus-fcoe
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.

1. 요약·해설

원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.

FCoE bus control interfaces

sysfs-bus-fcoe:1-23

FCoE bus의 ctlr_create와 ctlr_destroy는 interface 이름으로 controller를 만들고, sysfs controller 이름으로 fabric logout과 관련 kernel 자원 해제를 수행합니다.

FCoE controller instances

sysfs-bus-fcoe:25-78

ctlr_X는 생성, per-port 설정, 활성화의 3단계 lifecycle을 따르며 mode·enabled·FCF timeout과 LESB error counters를 노출합니다.

Fibre Channel Forwarder instances

sysfs-bus-fcoe:80-138

fcf_X는 Ethernet의 FCoE packets와 FC fabric의 frames를 중계하는 FCF의 식별자, 선택 정보, keep-alive와 연결 state를 노출합니다.

2. 영어 원문 전체

번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.

원문 전체 펼치기
1 What: /sys/bus/fcoe/
2 Date: August 2012
3 KernelVersion: TBD
4 Contact: Robert Love <robert.w.love@intel.com>, devel@open-fcoe.org
5 Description: The FCoE bus. Attributes in this directory are control interfaces.
6
7 Attributes:
8
9 ctlr_create:
10 'FCoE Controller' instance creation interface. Writing an
11 <ifname> to this file will allocate and populate sysfs with a
12 fcoe_ctlr_device (ctlr_X). The user can then configure any
13 per-port settings and finally write to the fcoe_ctlr_device's
14 'start' attribute to begin the kernel's discovery and login
15 process.
16
17 ctlr_destroy:
18 'FCoE Controller' instance removal interface. Writing a
19 fcoe_ctlr_device's sysfs name to this file will log the
20 fcoe_ctlr_device out of the fabric or otherwise connected
21 FCoE devices. It will also free all kernel memory allocated
22 for this fcoe_ctlr_device and any structures associated
23 with it, this includes the scsi_host.
24
25 What: /sys/bus/fcoe/devices/ctlr_X
26 Date: March 2012
27 KernelVersion: TBD
28 Contact: Robert Love <robert.w.love@intel.com>, devel@open-fcoe.org
29 Description: 'FCoE Controller' instances on the fcoe bus.
30 The FCoE Controller now has a three stage creation process.
31 1) Write interface name to ctlr_create 2) Configure the FCoE
32 Controller (ctlr_X) 3) Enable the FCoE Controller to begin
33 discovery and login. The FCoE Controller is destroyed by
34 writing its name, i.e. ctlr_X to the ctlr_delete file.
35
36 Attributes:
37
38 fcf_dev_loss_tmo:
39 Device loss timeout period (see below). Changing
40 this value will change the dev_loss_tmo for all
41 FCFs discovered by this controller.
42
43 mode:
44 Display or change the FCoE Controller's mode. Possible
45 modes are 'Fabric' and 'VN2VN'. If a FCoE Controller
46 is started in 'Fabric' mode then FIP FCF discovery is
47 initiated and ultimately a fabric login is attempted.
48 If a FCoE Controller is started in 'VN2VN' mode then
49 FIP VN2VN discovery and login is performed. A FCoE
50 Controller only supports one mode at a time.
51
52 enabled:
53 Whether an FCoE controller is enabled or disabled.
54 0 if disabled, 1 if enabled. Writing either 0 or 1
55 to this file will enable or disable the FCoE controller.
56
57 lesb/link_fail:
58 Link Error Status Block (LESB) link failure count.
59
60 lesb/vlink_fail:
61 Link Error Status Block (LESB) virtual link
62 failure count.
63
64 lesb/miss_fka:
65 Link Error Status Block (LESB) missed FCoE
66 Initialization Protocol (FIP) Keep-Alives (FKA).
67
68 lesb/symb_err:
69 Link Error Status Block (LESB) symbolic error count.
70
71 lesb/err_block:
72 Link Error Status Block (LESB) block error count.
73
74 lesb/fcs_error:
75 Link Error Status Block (LESB) Fibre Channel
76 Services error count.
77
78 Notes: ctlr_X (global increment starting at 0)
79
80 What: /sys/bus/fcoe/devices/fcf_X
81 Date: March 2012
82 KernelVersion: TBD
83 Contact: Robert Love <robert.w.love@intel.com>, devel@open-fcoe.org
84 Description: 'FCoE FCF' instances on the fcoe bus. A FCF is a Fibre Channel
85 Forwarder, which is a FCoE switch that can accept FCoE
86 (Ethernet) packets, unpack them, and forward the embedded
87 Fibre Channel frames into a FC fabric. It can also take
88 outbound FC frames and pack them in Ethernet packets to
89 be sent to their destination on the Ethernet segment.
90
91 Attributes:
92
93 fabric_name:
94 Identifies the fabric that the FCF services.
95
96 switch_name:
97 Identifies the FCF.
98
99 priority:
100 The switch's priority amongst other FCFs on the same
101 fabric.
102
103 selected:
104 1 indicates that the switch has been selected for use;
105 0 indicates that the switch will not be used.
106
107 fc_map:
108 The Fibre Channel MAP
109
110 vfid:
111 The Virtual Fabric ID
112
113 mac:
114 The FCF's MAC address
115
116 fka_period:
117 The FIP Keep-Alive period
118
119 fabric_state: The internal kernel state
120
121 - "Unknown" - Initialization value
122 - "Disconnected" - No link to the FCF/fabric
123 - "Connected" - Host is connected to the FCF
124 - "Deleted" - FCF is being removed from the system
125
126 dev_loss_tmo: The device loss timeout period for this FCF.
127
128 Notes: A device loss infrastructure similar to the FC Transport's
129 is present in fcoe_sysfs. It is nice to have so that a
130 link flapping adapter doesn't continually advance the count
131 used to identify the discovered FCF. FCFs will exist in a
132 "Disconnected" state until either the timer expires and the
133 FCF becomes "Deleted" or the FCF is rediscovered and becomes
134 "Connected."
135
136
137 Users: The first user of this interface will be the fcoeadm application,
138 which is commonly packaged in the fcoe-utils package.
139

3. 한국어 전문 번역

영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.

FCoE bus control interfaces

1-23
항목전문 번역
What/sys/bus/fcoe/
Date2012년 8월
KernelVersionTBD
ContactRobert Love <robert.w.love@intel.com>, devel@open-fcoe.org
DescriptionFCoE bus입니다. 이 directory의 attributes는 control interfaces입니다.
Attribute전문 번역
ctlr_create'FCoE Controller' instance 생성 interface입니다. 이 file에 <ifname>을 쓰면 fcoe_ctlr_device(ctlr_X)를 할당하고 sysfs를 채웁니다. 그 후 사용자는 port별 설정을 구성하고, 마지막으로 fcoe_ctlr_device의 'start' attribute에 써서 kernel의 discovery 및 login process를 시작할 수 있습니다.
ctlr_destroy'FCoE Controller' instance 제거 interface입니다. 이 file에 fcoe_ctlr_device의 sysfs 이름을 쓰면 fcoe_ctlr_device를 fabric 또는 그 밖에 연결된 FCoE devices에서 logout시킵니다. 또한 이 fcoe_ctlr_device와 연관 구조체에 할당된 모든 kernel memory를 해제하며, 여기에는 scsi_host도 포함됩니다.

FCoE controller instances

25-78
항목전문 번역
What/sys/bus/fcoe/devices/ctlr_X
Date2012년 3월
KernelVersionTBD
ContactRobert Love <robert.w.love@intel.com>, devel@open-fcoe.org
DescriptionFCoE bus의 'FCoE Controller' instances입니다. FCoE Controller의 생성 process는 이제 세 단계입니다. 1) interface 이름을 ctlr_create에 씁니다. 2) FCoE Controller(ctlr_X)를 구성합니다. 3) FCoE Controller를 enable하여 discovery와 login을 시작합니다. FCoE Controller는 그 이름, 즉 ctlr_X를 ctlr_delete file에 써서 제거합니다.
Attribute전문 번역
fcf_dev_loss_tmoDevice loss timeout 기간입니다. 아래 설명도 참조합니다. 이 값을 변경하면 이 controller가 발견한 모든 FCF의 dev_loss_tmo가 변경됩니다.
modeFCoE Controller의 mode를 표시하거나 변경합니다. 가능한 mode는 'Fabric'과 'VN2VN'입니다. 'Fabric' mode로 시작하면 FIP FCF discovery를 시작하고 최종적으로 fabric login을 시도합니다. 'VN2VN' mode로 시작하면 FIP VN2VN discovery와 login을 수행합니다. FCoE Controller는 한 번에 하나의 mode만 지원합니다.
enabledFCoE controller의 enable 또는 disable 여부입니다. disable이면 0, enable이면 1입니다. 이 file에 0 또는 1을 쓰면 FCoE controller를 disable하거나 enable합니다.
lesb/link_failLink Error Status Block(LESB)의 link failure count입니다.
lesb/vlink_failLink Error Status Block(LESB)의 virtual link failure count입니다.
lesb/miss_fkaLink Error Status Block(LESB)에서 누락된 FCoE Initialization Protocol(FIP) Keep-Alives(FKA)의 수입니다.
lesb/symb_errLink Error Status Block(LESB)의 symbolic error count입니다.
lesb/err_blockLink Error Status Block(LESB)의 block error count입니다.
lesb/fcs_errorLink Error Status Block(LESB)의 Fibre Channel Services error count입니다.

참고: ctlr_X는 0부터 시작해 전역적으로 증가합니다.

Fibre Channel Forwarder instances

80-138
항목전문 번역
What/sys/bus/fcoe/devices/fcf_X
Date2012년 3월
KernelVersionTBD
ContactRobert Love <robert.w.love@intel.com>, devel@open-fcoe.org
DescriptionFCoE bus의 'FCoE FCF' instances입니다. FCF는 Fibre Channel Forwarder입니다. FCoE(Ethernet) packets를 받아 unpack하고 그 안의 Fibre Channel frames를 FC fabric으로 전달할 수 있는 FCoE switch입니다. 또한 outbound FC frames를 Ethernet packets에 넣어 Ethernet segment의 목적지로 보낼 수 있습니다.
Attribute전문 번역
fabric_nameFCF가 서비스하는 fabric을 식별합니다.
switch_nameFCF를 식별합니다.
priority같은 fabric에 있는 다른 FCF와 비교한 switch의 priority입니다.
selected1은 사용할 switch로 선택되었음을 나타내고, 0은 switch가 사용되지 않음을 나타냅니다.
fc_mapFibre Channel MAP입니다.
vfidVirtual Fabric ID입니다.
macFCF의 MAC address입니다.
fka_periodFIP Keep-Alive 기간입니다.
fabric_state내부 kernel state입니다. 'Unknown'은 initialization value, 'Disconnected'는 FCF/fabric과 link가 없는 상태, 'Connected'는 host가 FCF에 연결된 상태, 'Deleted'는 FCF가 system에서 제거되는 중인 상태입니다.
dev_loss_tmo이 FCF의 device loss timeout 기간입니다.

참고: FC Transport와 유사한 device loss infrastructure가 fcoe_sysfs에 있습니다. link가 반복해서 끊겼다 붙는 adapter 때문에 발견된 FCF를 식별하는 데 쓰는 count가 계속 증가하지 않도록 하는 데 유용합니다. FCF는 timer가 만료되어 'Deleted'가 되거나, 다시 발견되어 'Connected'가 될 때까지 'Disconnected' state로 존재합니다.

사용자: 이 interface의 첫 사용자는 fcoeadm application이며, 일반적으로 fcoe-utils package에 포함됩니다.