Dell Developed and Dell Deployed—Consistent Network Port Naming on Dell™ 12th Generation PowerEdge™ Servers with Microsoft ® Windows Server® 2012 Beta 

This blog post was originally written by Thomas Cantwell.  Comments are welcome! To suggest a blog topic or make other comments, contact WinServerBlogs@dell.com.

Dell Addresses Major Customer Pain Point in 12th Generation PowerEdge Servers

Customers have grown accustomed to using Plug ‘n’ Play enumeration of devices for a long time.  PnP has been a tremendous help for loading device drivers without customer interventionBUT, it also is non-deterministic.  This means that devices are enumerated “in the order received”, and this can vary.  For network ports, a common complaint has been “Port 1 on the back of my system is NOT port 1 in the operating system!”

Dell Innovation—A Dell-Driven Solution

On Dell 12th Generation PowerEdge Servers, Dell engineers from BIOS and Operating System development teams worked together to investigate this customer issue and what the solution should look like.  Dell BIOS engineers identified a mechanism for making device names deterministic under an operating system and brought forward a change request to the PCI SIG, who develop and enhance the PCI standard.  Additionally, Microsoft engineers added the ability in Windows Server 2012 to read this information from the Advanced Configuration and Power Interface (ACPI) codes in compliant BIOSes. 

As a result, NIC names are now consistent and deterministic in Windows Server 2012 Beta running on Dell 12th Generation PowerEdge Servers - your ports will be named the same every time you restart the server.

See Dell's request to change the PCI standard to make customers' lives easier in the following document:

The Final Result

So, what does Consistent Network Port Naming look like in Windows Server 2012 Beta?  There are two columns in the screenshot below to pay attention to:

Note: This screenshot is from a pre-release version of Windows Server 2012 Beta and there may be changes to the UI in the final release.

Device Name Column – This is the PnP enumerated name (the friendly name via the driver INF file) and the enumerated value. Note that the ports are enumerated in a different order than in the Name column — #3, #4, “null”, #2.  If the operating system is reinstalled, or drivers changed and the devices re-enumerated, these numbers may change as they did with previous operating systems. This phenomenon clearly illustrates the issue customers face when they only have PnP enumeration to determine the network port number.  

Name Column – This is the NEW feature. Be aware that the final Dell naming structure is still under development, so the screenshot may not represent the final name, but you will be able to identify port names in the Name column and the ports will be numbered consistently. In this example, J_ETH1   is the 1st network port as labeled on the back of the chassis. This name will NEVER change as it is not dependent on PnP. You now have a dependable mechanism to provide a consistent port name / number for the onboard ports on the system that corresponds to the port numbering on the back of the system. In other words, ports J_ETH2, J_ETH3, and J_ETH4 as identified by the operating system are the 2nd, 3rd, and 4th ports on the back of the system respectively.


Conclusion

Dell 12th generation PowerEdge servers have the necessary BIOS support at launch for the onboard Network Daughter Card (NDC) to support consistent network port naming. Additional support for PCIe slot numbering and names (under the Name field in the screenshot, you will see a “Slot” designator) will be provided in a future Dell BIOS update. 

In summary, when officially released Windows Server 2012 Beta will be the first Windows® operating system to support this new capability. Finally, customers will be able to correlate network connections in the OS with ports on the back of the system chassis! 

Acknowledgements

Dell BIOS team members Vijay Nijhawan and Mukund Khatri developed the solution to consistently name network ports and then carried this solution through the PCI specifications committees, where it was ratified in 2011.  Dell BIOS engineers and OS engineers worked to develop the necessary BIOS infrastructure and worked closely with Microsoft to ensure that Windows Server 2012 will provide the necessary operating system and driver infrastructure to use this new firmware feature.

Because Windows Server 2012 Beta is a pre-release product and still in active development, all features are of course subject to change. Dell does not provide any support for this pre-release software and it is not recommended for use in a production environment.

Feel free to check out the new features of the Beta release on your test servers and let us know what you think. Stay tuned for more blogs from the Dell OS Engineering team.