跳过导航链接 | |
退出打印视图 | |
管理 Oracle Solaris 11.1 网络性能 Oracle Solaris 11.1 Information Library (简体中文) |
ETS 是一项 DCB 功能,该功能允许根据应用程序的 DCB 优先级为其分配 NIC 上的带宽。DCB 优先级是包含一个 3 位优先级字段的 VLAN 头。优先级字段的值用于区分网络中的以太网包。DCB 使用该优先级值(也称为 802.1p 优先级)将通信与其他 DCB 属性(如 PFC 配置和链路带宽)关联。将 DCB 配置为根据包的优先级值设置要分配给包的特定带宽。
要使用 ETS,NIC 必须支持 DCB 并在 DCB 模式下运行。
引用 PFC 信息的数据链路属性适用于基于为包定义的 CoS 优先级来防止包丢失。引用 ETS 信息的属性适用于基于相同的 CoS 优先级为包分配共享带宽。可通过以下数据链路属性配置 ETS:
cos 指定数据链路的服务类。该属性表示以太网优先级。该属性的值(介于 0 到 7)应用于数据链路上的传出包。该值是在传出包的 VLAN 标记中设置的。如果对物理链路本身设置此属性,则优先级仅应用于该链路的主客户机上的通信。不会在其他辅助客户机(如 VNIC)上设置此优先级。缺省情况下,如果 NIC 在 DCB 模式下运行,或者链路为 VLAN,则将 cos 设置为 0。
etsbw-lcl 指示为数据链路的 TX 端分配的 ETS 带宽。仅当底层物理 NIC 具有 DCB 功能并支持 ETS 时,此属性才可配置。可通过指定要分配给辅助数据链路或客户机的底层 NIC 总带宽的百分比来设置该值。只要该链路的 cos 未设置为零 (0),就可以设置该属性。
注 - 配置为聚合且在 DCB 模式下运行的物理链路当前不支持 ETS。
在 etsbw-lcl 中定义的带宽百分比不是仅用于辅助客户机的保留量。如果分配的带宽未使用,则该带宽可由具有类似配置的其他客户机使用。此外,仅在主机通信的传输端强制进行带宽分配。
除了前面列表中的属性,以下只读属性也提供有关本地主机与其对等方之间所交换的带宽数据的信息:
etsbw-lcl-advice 指定建议的带宽份额。此数据链路建议带宽由远程对等方发送至本地主机。
etsbw-lcl-effective 指在本地主机的数据链路上实施的实际带宽份额。此属性可反映 etsbw-lcl 属性或 etsbw-lcl-advice 属性的值。
estbw-rmt-effective 指在远程对等方中配置的带宽份额。
对于具有特定优先级的包要使用的相应带宽,最好使通信主机之间的 ETS 信息对称或进行同步。确切地说,本地系统应该能够将其带宽份额调整为 etsbw-lcl-advice 的值。Oracle Solaris 11 系统可以自动调整其 ETS 配置,以匹配远程对等方的 ETS 配置。
estbw-lcl-effective 属性间接指示本地主机用于与对等方匹配 ETS 信息的功能是否已启用。如果此属性的值匹配 etsbw-lcl-advice 的值,则该功能已启用。否则,etsbw-lcl-effective 和 etsbw-lcl 属性的值将相同。
ETS TLV 单元 etscfg 控制与从对等主机接收的信息有关的主机行为。此 TLV 单元只有一个可配置属性 willing。缺省情况下,此属性设置为 on,从而使本地主机可以将其 ETS 配置与远程对等方的 ETS 配置同步。如果需要防止同步某特定代理的信息,请将 willing 属性设置为 off,如下所示:
# lldpadm set-agenttlvprop -p willing=off -a agent etscfg
其中,agent 通过启用代理的数据链路进行标识。
大多数情况下,系统上的缺省 ETS 配置已足够。如果启用了 LLDP,底层链路支持 DCB,并且底层链路在 DCB 模式下运行,则将自动设置此配置。但是,为了显示配置 ETS 时可以使用的其他选项,此过程列出了手动配置 ETS 的步骤。这些步骤假定不存在任何自动配置,并且在虚拟客户机 vnic1 上执行配置。在 LLDP 代理 net0 上配置虚拟客户机。
请参见如何启用 DCBX。
缺省情况下,PFC、ETS 和边缘虚拟桥接 (edge virtual bridging, EVB) 已启用。假定您希望禁用 EVB。那么,从 LLDP 代理的 dot1–tlv 属性中删除其他两个值。
# lldpadm set-agenttlvprop -p dot1-tlv-=evb net0
# dladm set-linkprop -p cos=value vnic1
# dladm set-linkprop -p etsbw-lcl=value vnic1
指定给 etsbw-lcl 属性的值表示底层链路的带宽总量的百分比。为客户机指定的所有已分配带宽值的总和不得超过 100%。
# lldpadm show-agenttlvprop -p willing -a net0 etscfg
如果 willing 属性设置为 off,请发出以下命令:
# lldpadm set-agenttlvprop -p willing=on -a net0 etscfg
本节包含配置 LLDP 和 DCB 后与 ETS 配置相关的信息的多个示例。
以下命令显示有关 ETS 配置的信息:
dladm show-linkprop -p etsbw-lcl,etsbw-advise,etsbw-lcl-effective,etsbw-rmt-effective datalink
此命令显示带宽分配定义以及数据链路上实施的有效分配。
dladm show-phys -D ets datalink
此命令显示物理链路上与链路间的带宽分配和分发有关的 ETS 配置。
lldpadm show-agenttlvprop -a agent etscfg
其中,agent 通过启用 LLDP 的数据链路进行标识。此命令显示 ETS TLV 属性,该属性控制主机将 ETS 信息与对等方同步的功能。
以下示例说明列出的命令所显示的信息类型。
示例 8-5 显示与 ETS 相关的数据链路属性
此示例说明如何显示与增强传输选择相关的数据链路属性的状态。
# dladm show-linkprop -p cos,etsbw-lcl,etsbw-lcl-advise, \ etsbw-lcl-effective,etsbw-rmt-effective vnic1 LINK PROPERTY PERM VALUE DEFAULT POSSIBLE vnic1 cos rw 2 0 0-7 vnic1 etsbw-lcl rw 20 0 -- vnic1 etsbw-lcl-advise r- -- -- -- vnic1 etsbw-lcl-effective r- -- -- -- vnic1 etsbw-rmt-effective r- -- -- --
该输出显示 vnic1 配置为使用物理链路总可用带宽的 20% 带宽份额。VNIC 的 802.1p 优先级(通过 cos 属性指示)设置为二。
示例 8-6 显示本地主机同步 ETS 信息的功能
此示例说明如何显示本地主机用于适应对等方的 ETS 配置的功能的当前状态。
# lldpadm show-agenttlvprop -a net0 etscfg AGENT TLVNAME PROPERTY PERM VALUE DEFAULT POSSIBLE net0 etscfg willing rw off on on,off
要启用同步,请发出以下命令:
# lldpadm set-agenttlvprop -p willing=on -a net0 etscfg # dladm show-linkprop -p etsbw-lcl,etsbw-lcl-advise, \ etsbw-lcl-effective,etsbw-rmt-effective vnic0 LINK PROPERTY PERM VALUE DEFAULT POSSIBLE vnic1 cos rw 2 0 0-7 vnic1 etsbw-lcl rw 20 0 -- vnic1 etsbw-lcl-advise r- 15 -- -- vnic1 etsbw-lcl-effective r- 15 -- -- vnic1 etsbw-rmt-effective r- 25 -- --
尽管 vnic1 的 estbw-lcl 设置为 20%,但为匹配从对等方接收到的建议带宽,该 VNIC 的有效带宽份额为 15%。此调整是由于将 etscfg TLV 单元的 willing 属性切换为 on。
以下示例说明物理链路上的优先级映射:
# dladm show-phys -D ets net0 LINK COS ETSBW ETSBW_EFFECT CLIENTS ixgbe0 0 20 20 <default,mcast>,net0 1 15 15 vnic2 2 20 20 vnic1 3 30 30 vnic5 4 15 15 vnic3 5 0 0 vnic4 6 0 0 vnic6 7 0 0 vnic7
在此示例中,为不同的 VNIC 设置了各自对应的 cos 值。根据之前的输出,vnic1 的 cos 属性设置为二。在 ETSBW 字段下,客户机 vnic1 的有效带宽份额为 15% 以匹配从对等方接收到的建议值(显示在 ETSBW_EFFECT 字段下)。此示例还显示最大份额的带宽分配给了 vnic5。请注意,分配给 vnic4、vnic6 和 vnic7 的带宽为 0% 并不表示这些客户机完全没有带宽份额。更确切地说,如果其他客户机正在使用分配给这些客户机的带宽,则这些客户机不会接收到带宽。