Modern Gigabit and multi-gigabit Ethernet adapters include hardware-level features engineered to reduce power consumption across physical cable runs. In addition to the standard IEEE 802.3az Energy Efficient Ethernet (EEE) specification, major physical layer (PHY) controller vendors—most notably Realtek with their RTL8111, RTL8125, and RTL8153 series—implement a proprietary enhancement called Advanced EEE. While standard EEE coordinates low-power idle (LPI) modes between the network card and compliant switch ports, Advanced EEE employs aggressive autonomous sleep algorithms directly on the local transceiver. However, when connected to unmanaged switches, older enterprise routers, or power-over-Ethernet (PoE) pass-through injectors, Advanced EEE can trigger severe link flapping, throughput degradation, and packet drops. In Windows 11, administrators can configure Advanced EEE deterministically using PowerShell.
Differences Between Standard EEE and Advanced EEE
Understanding the distinction between standard and proprietary power management is crucial for network troubleshooting:
- Energy Efficient Ethernet (IEEE 802.3az): Requires mutual negotiation during the physical auto-negotiation phase. Both the host adapter and the upstream switch port must support 802.3az. When no data is in transit, the transmitter enters Low Power Idle (LPI), periodically sending refresh signals to maintain link synchronization.
- Advanced EEE: An autonomous, vendor-proprietary power-saving implementation that operates unilaterally on the host transceiver. It attempts to scale down transceiver power rails and gate clock generators even if the upstream switch does not negotiate or understand IEEE 802.3az.
When an unmanaged switch does not anticipate these autonomous PHY voltage drops, it misinterprets the reduced signal amplitude as a physical cable disconnection. The switch port drops the connection, triggering an instantaneous link renegotiation cycle that repeats every few minutes, manifesting as intermittent network dropouts on the Windows 11 host.
Querying Network Adapters and Identifying Advanced EEE
To inspect your network hardware and locate the exact property name exposed by your network driver, open an elevated PowerShell prompt and list the physical adapters:
Get-NetAdapter -Physical | Select-Object -Property Name, InterfaceDescription, Status, LinkSpeed
Next, query the advanced properties of your primary Ethernet interface to identify whether Advanced EEE is present:
Get-NetAdapterAdvancedProperty -Name "Ethernet" | Where-Object { $_.DisplayName -match "Advanced EEE|EEE|Energy" }
On systems equipped with Realtek or allied PCIe/USB Ethernet controllers, the property is displayed as Advanced EEE and binds to the registry keyword AdvancedEEE. Inspect its current configuration and allowed parameters:
Get-NetAdapterAdvancedProperty -Name "Ethernet" -DisplayName "Advanced EEE" | Select-Object DisplayName, DisplayValue, RegistryKeyword, RegistryValue, ValidDisplayValues
Disabling Advanced EEE to Prevent Link Flapping and Packet Drops
In low-latency and mission-critical environments—such as virtualisation hosts, file servers, digital audio workstations, or gaming desktops—disabling Advanced EEE forces the PHY transceiver to maintain constant transmission voltages, eliminating the renegotiation cycles caused by switch incompatibility.
To disable Advanced EEE on your primary Ethernet interface, execute Set-NetAdapterAdvancedProperty:
Set-NetAdapterAdvancedProperty -Name "Ethernet" -DisplayName "Advanced EEE" -DisplayValue "Disabled"
If you prefer using the registry keyword for standardized automation across multilingual Windows deployments, run:
Set-NetAdapterAdvancedProperty -Name "Ethernet" -RegistryKeyword "AdvancedEEE" -RegistryValue "0"
Executing this command triggers a momentary physical link renegotiation as the network driver resets transceiver power rails. The link will drop for approximately one second before re-establishing a stable connection.
Enabling Advanced EEE for Low-Power Operation
In power-sensitive office environments or laptop docking setups where endpoints are paired with modern, fully compliant green network switches, enabling Advanced EEE allows the network controller to operate with minimal power consumption and reduced thermal output.
To enable Advanced EEE via PowerShell:
Set-NetAdapterAdvancedProperty -Name "Ethernet" -DisplayName "Advanced EEE" -DisplayValue "Enabled"
Or configure via the registry keyword directly:
Set-NetAdapterAdvancedProperty -Name "Ethernet" -RegistryKeyword "AdvancedEEE" -RegistryValue "1"
Verify that the updated setting is written to the adapter’s active configuration:
Get-NetAdapterAdvancedProperty -Name "Ethernet" -RegistryKeyword "AdvancedEEE"
Automating Fleet-Wide Configuration Across Multiple Adapters
For systems administrators managing large fleets of enterprise workstations and laptops, hardcoded interface names can lead to script failures. The following PowerShell script enumerates all physical Ethernet adapters, checks for the presence of the AdvancedEEE property, and uniformly disables it to guarantee link stability:
$Adapters = Get-NetAdapter -Physical | Where-Object { $_.MediaType -eq "802.3" }
foreach ($NIC in $Adapters) {
$Property = Get-NetAdapterAdvancedProperty -Name $NIC.Name -ErrorAction SilentlyContinue |
Where-Object { $_.DisplayName -match "Advanced EEE" -or $_.RegistryKeyword -match "AdvancedEEE" }
if ($Property) {
Write-Host "Disabling Advanced EEE on interface: $($NIC.Name) ($($NIC.InterfaceDescription))" -ForegroundColor Cyan
Set-NetAdapterAdvancedProperty -Name $NIC.Name -RegistryKeyword $Property.RegistryKeyword -RegistryValue "0"
} else {
Write-Host "Advanced EEE not supported on: $($NIC.Name)" -ForegroundColor DarkGray
}
}
Verifying Link Speed and Checking Event Viewer Diagnostics
After adjusting Advanced EEE, verify that the physical connection negotiated the expected full-duplex link speed using Get-NetAdapter:
Get-NetAdapter -Name "Ethernet" | Select-Object Name, Status, LinkSpeed, FullDuplex
To ensure that the adapter is no longer experiencing intermittent disconnections, query the Windows System Event Log for NDIS connection events:
Get-WinEvent -FilterHashtable @{
LogName = 'System'
ProviderName = @('Tcpip', 'e1rexpress', 'rt640x64', 'NetAdapterCx')
StartTime = (Get-Date).AddHours(-1)
} -ErrorAction SilentlyContinue | Select-Object TimeCreated, Id, Message -First 5
With Advanced EEE disabled, the physical interface maintains clean, unbroken signal voltages, eliminating the periodic link drops and micro-stutters responsible for network transfer degradation in Windows 11.