|Skip Navigation Links|
|Exit Print View|
|Managing Oracle Solaris 11.1 Network Performance Oracle Solaris 11.1 Information Library|
ETS is a DCB feature that allows allocation of bandwidth on a NIC to applications based on their DCB priority. The DCB priority is a VLAN header with a 3 bit priority field. The priority field's value differentiates Ethernet packets in the network. DCB uses the priority value, also called the 802.1p priority, to associate traffic with other DCB properties such as PFC configuration and link bandwidth. You configure DCB to set specific bandwidth to be allocated to packets depending on their priority values.
To use ETS, the NIC must support DCB and run in DCB mode.
The properties of datalinks that refer to PFC information applies to the prevention of packet loss based on the CoS priorities defined for the packets. Properties that refer to ETS information applies to the allocation of shared bandwidth for packets based on the same CoS priorities You configure ETS on the following datalink properties:
cos specifies the class of service for a datalink. The property represents the Ethernet priority. The property's value, which ranges from 0 to 7, is applied to outbound packets on the datalink. The value is set on the VLAN tag of the outbound packets. If this property is set on the physical link itself, then the priority applies only to the traffic on that link's primary client. The priority is not set on other secondary clients such as VNICs. By default, cos is set to 0 if the NIC is running on DCB mode, or if the link is a VLAN.
etsbw-lcl indicates the ETS bandwidth that is allocated on the TX side for the datalink. This property is configurable only if the underlying physical NIC has DCB capabilities and supports ETS. You set the value by specifying the percentage of total bandwidth of the underlying NIC that you want to allocate to a secondary datalink or client. You can set this property provided that the link's cos is not set to zero (0).
Note - ETS currently is not supported on physical links on DCB mode that are configured into an aggregation.
The bandwidth percentage that is defined on etsbw-lcl is not a reserved amount only for that secondary client. If the allocated bandwidth is not used, then it can be used by other clients that are similarly configured. Further, the bandwidth allocation is enforced only on the transmission side of the host's traffic.
In addition to the properties in the previous list, the following read-only properties provide information about the bandwidth data that is exchanged between the local host and its peer:
etsbw-lcl-advice specifies the recommended bandwidth share. This recommended bandwidth for a datalink is sent by the remote peer to the local host.
etsbw-lcl-effective refers to the actual bandwidth share that is implemented on the local host's datalink. The property can reflect either the value of the etsbw-lcl property or the value of the etsbw-lcl-advice property.
estbw-rmt-effective refers to the bandwidth share that is configured on the remote peer.
For the appropriate bandwidth to be used for packets with specific priorities, symmetric or synchronized ETS information between the communicating hosts is preferable. Specifically, the local system's ability to adjust its bandwidth share to the value of etsbw-lcl-advice is desirable. An Oracle Solaris 11 system can automatically adjust its ETS configurations to match the ETS configurations on the remote peer.
The estbw-lcl-effective property indirectly indicate if the ability of the local host to match ETS information with the peer is enabled or not. If the property's value matches the value of etsbw-lcl-advice, then the ability is enabled. Otherwise, the values of the etsbw-lcl-effective and etsbw-lcl properties would be identical.
The ETS TLV unit etscfg controls the host's behavior with regards to the information that is received from the peer host. This TLV unit has only one configurable property, willing. By default, this property is set to on and enables the local host to synchronize its ETS configuration with the ETS configuration of the remote peer. If you need to prevent synchronization of information for a specific agent, set the willing property to off as follows:
# lldpadm set-agenttlvprop -p willing=off -a agent etscfg
where agent is identified by the datalink on which the agent is enabled.
In most cases, the default configuration for ETS on the system is sufficient. This configuration is automatically set up when LLDP is enabled, DCB is supported by the underlying link, and the underlying link is running on DCB mode. However, to show the different options that you can use when configuring ETS, this procedure lists the manual steps for ETS configuration. The steps assume that no automatic configuration exists and that the configurations are performed on the virtual client vnic1. The virtual client is configured over net0, which is the LLDP agent.
See How to Enable DCBX.
By default, PFC, ETS, and edge virtual bridging (EVB) are enabled. Suppose that you prefer to disable EVB. Then remove the other two from the dot1–tlv property of the LLDP agent.
# lldpadm set-agenttlvprop -p dot1-tlv-=evb net0
# dladm set-linkprop -p cos=value vnic1
# dladm set-linkprop -p etsbw-lcl=value vnic1
The value that you assign to the etsbw-lcl property represents a percentage of the total bandwidth capacity of the underlying link. The sum of all the allocated bandwidth values that you assign to the clients must not exceed 100 percent.
# lldpadm show-agenttlvprop -p willing -a net0 etscfg
If the willing property is set to off, issue the following command.
# lldpadm set-agenttlvprop -p willing=on -a net0 etscfg
This section contains several examples of information related to ETS configuration after LLDP and DCB are configured.
The following commands display information about ETS configuration:
dladm show-linkprop -p etsbw-lcl,etsbw-advise,etsbw-lcl-effective,etsbw-rmt-effective datalink
This command displays the bandwidth allocation definitions as well as the effective allocation that is implemented on the datalink.
dladm show-phys -D ets datalink
This command displays ETS configuration on the physical link with regard to bandwidth allocation and distribution across the link.
lldpadm show-agenttlvprop -a agent etscfg
where agent is identified by the datalink on which LLDP is enabled. This command displays the ETS TLV property that controls a host's capability to synchronize ETS information with a peer.
The following examples show the types of information that is displayed by the listed commands.
Example 8-5 Displaying ETS-Related Datalink Properties
This example shows how to display the status of datalink properties that are related to enhanced transmission selection.
# 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- -- -- --
The output shows that vnic1 is configured to have a bandwidth share of 20% of the total bandwidth available for the physical link. The VNIC's 802.1p priority, indicated by the cos property, is set to two.
Example 8-6 Displaying the Capability of the Local Host to Synchronize ETS Information
This example shows how to display the current status of the local host's ability to adjust to the peer's ETS configurations.
# lldpadm show-agenttlvprop -a net0 etscfg AGENT TLVNAME PROPERTY PERM VALUE DEFAULT POSSIBLE net0 etscfg willing rw off on on,off
To enable synchronization, issue the following command:
# 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 -- --
Although estbw-lcl was set to 20% for vnic1, the VNIC's effective bandwidth share is 15% to match the advised bandwidth received from the peer. The adjustment occurs as a consequence of switching the willing property of the etscfg TLV unit to on.
The following example shows priority mappings on the physical link:
# 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
In this example, different VNICs are set with their own corresponding cos values. Based on the previous output, vnic1's cos property is set to two, Under the ETSBW field, the client vnic1 has an effective bandwidth share of 15% to match the advised value that is received from the peer, shown under the ETSBW_EFFECT field, The example also shows that the biggest share of bandwidth is allocated to vnic5. Note that an allocation of 0% to vnic4, vnic6, and vnic7 does not indicate that the clients have no share of the bandwidth at all. Rather, these clients do not receive bandwidth if the other clients are using their allocated bandwidth.