Enhanced Transmission Selection
# Enhanced Transmission Selection

Enhanced Transmission Selection (ETS) is a network scheduler scheduling algorithm that has been defined by the Data Center Bridging Task Group of the IEEE 802.1 Working Group. It is a hierarchical scheduler that combines static priority scheduling and a bandwidth sharing algorithms (such as Weighted round robin or Deficit round robin).

## Description

The Enhanced Transmission Selection algorithm is one scheduling algorithm supported by IEEE 802.1Q. In Enhanced Transmission Selection, they are two types or queues: Strict priority or Credit-based queues, and bandwidth-assigned queues. Each bandwidth-assigned queue has a bandwidth parameter, and the total for all bandwidth-assigned queue must be 100%.

If there is no frame ready for transmission, in the Strict priority and Credit-based queues, a frame from the bandwidth-assigned queue can be transmitted. A bandwidth-sharing algorithm is in charge of selecting the queue such that the bandwidth consumed by each queue approaches its percentage of the bandwidth leftover by the Strict priority and Credit-based queues. If a queue uses less than its percentage, the remainder of its percentage used by other queues.

The standard does not specify which bandwidth-sharing algorithm must be used since there are a number of variants of bandwidth sharing algorithm, but gives some constraints and references Weighted round robin. The Linux implementation of ETS does not consider Credit-based queues and uses Deficit round robin as bandwidth-sharing algorithm. ETS is also implemented in Microsoft Network Drivers

