1libnvme(9) API Manual libnvme(9)
2
3
4
6 struct nbft_hfi_info_tcp - HFI Transport Info Descriptor - NVMe/TCP
7 (Figure 13)
8
10 struct nbft_hfi_info_tcp {
11 __u8 structure_id;
12 __u8 version;
13 __u8 trtype;
14 __u8 trinfo_version;
15 __le16 hfi_index;
16 __u8 flags;
17 __le32 pci_sbdf;
18 __u8 mac_addr[6];
19 __le16 vlan;
20 __u8 ip_origin;
21 __u8 ip_address[16];
22 __u8 subnet_mask_prefix;
23 __u8 ip_gateway[16];
24 __u8 reserved1;
25 __le16 route_metric;
26 __u8 primary_dns[16];
27 __u8 secondary_dns[16];
28 __u8 dhcp_server[16];
29 struct nbft_heap_obj host_name_obj;
30 __u8 reserved2[18];
31 };
32
33
35 structure_id
36 Structure ID: This field shall be set to 7h (i.e., HFI
37 Transport Info; #NBFT_DESC_HFI_TRINFO).
38
39 version Version: This field shall be set to 1h.
40
41 trtype HFI Transport Type, see enum nbft_trtype: This field shall
42 be set to 03h (i.e., NVMe/TCP; #NBFT_TRTYPE_TCP).
43
44 trinfo_version
45 Transport Info Version: Implementations compliant to this
46 specification shall set this field to 1h.
47
48 hfi_index HFI Descriptor Index: The value of the HFI Descriptor Index
49 field of the HFI Descriptor (see struct nbft_hfi.index)
50 whose HFI Transport Info Descriptor Heap Object Reference
51 field indicates this HFI Transport Info Descriptor.
52
53 flags HFI Transport Flags, see enum nbft_hfi_info_tcp_flags.
54
55 pci_sbdf PCI Express Routing ID for the HFI Transport Function: This
56 field indicates the PCI Express Routing ID as specified in
57 the PCI Express Base Specification.
58
59 mac_addr MAC Address: The MAC address of this HFI, in EUI-48TM for‐
60 mat, as defined in the IEEE Guidelines for Use of Extended
61 Unique Identifiers. This field shall be set to a non-zero
62 value.
63
64 vlan VLAN: If this field is set to a non-zero value, then this
65 field contains the VLAN identifier if the VLAN associated
66 with this HFI, as defined in IEEE 802.1q-2018. If no VLAN
67 is associated with this HFI, then this field shall be
68 cleared to 0h.
69
70 ip_origin IP Origin: If this field is set to a non-zero value, then
71 this field indicates the source of Ethernet L3 configura‐
72 tion information used by the driver for this interface.
73 Valid values are defined in the Win 32 API: NL_PREFIX_ORI‐
74 GIN enumeration specification. This field should be cleared
75 to 0h if the IP Origin field is unused by driver.
76
77 ip_address IP Address: This field indicates the IPv4 or IPv6 address
78 of this HFI. This field shall be set to a non-zero value.
79
80 subnet_mask_prefix
81 Subnet Mask Prefix: This field indicates the IPv4 or IPv6
82 subnet mask in CIDR routing prefix notation.
83
84 ip_gateway IP Gateway: If this field is set to a non-zero value, this
85 field indicates the IPv4 or IPv6 address of the IP gateway
86 for this HFI. If this field is cleared to 0h, then no IP
87 gateway is specified.
88
89 reserved1 Reserved.
90
91 route_metric
92 Route Metric: If this field is set to a non-zero value,
93 this field indicates the cost value for the route indicated
94 by this HF. This field contains the value utilized by the
95 pre-OS driver when chosing among all available routes.
96 Lower values relate to higher priority. Refer to IETF RFC
97 4249. If the pre-OS driver supports routing and did not
98 configure a specific route metric for this interface, then
99 the pre-OS driver should set this value to 500. If the pre-
100 OS driver does not support routing, then this field should
101 be cleared to 0h.
102
103 primary_dns Primary DNS: If this field is set to a non-zero value, this
104 field indicates the IPv4 or IPv6 address of the Primary DNS
105 server for this HFI, if any, from byte offset 0h of the
106 NBFT Table Header. If this field is cleared to 0h, then no
107 Primary DNS is specified.
108
109 secondary_dns
110 Secondary DNS: If this field is set to a non-zero value,
111 this field indicates the IPv4 or IPv6 address of the Sec‐
112 ondary DNS server for this HFI, if any, from byte offset 0h
113 of the NBFT Table Header. If this field is cleared to 0h,
114 then no Secondary DNS is specified.
115
116 dhcp_server DHCP Server: If the DHCP Override bit is set to 1h, then
117 this field indicates the IPv4 or IPv6 address of the DHCP
118 server used to assign this HFI address. If that bit is
119 cleared to 0h, then this field is reserved.
120
121 host_name_obj
122 Host Name Heap Object Reference: If this field is set to a
123 non-zero value, then this field indicates the location and
124 size of a heap object containing a Host Name string.
125
126 reserved2 Reserved.
127
128
129
130April 2023 struct nbft_hfi_info_tcp libnvme(9)