Dell Presentation Template Standard 4:3 Layout

Dell Presentation Template Standard 4:3 Layout

Network Device Naming Matt Domsch Technology Strategist, Office of the CTO Office of the CTO Which is eth0? 2 Office of the CTO Inspiration: Network Switches Ports labeled with slot and port (4/2). Config tools use this label. 3 Office of the CTO Chassis Labels 4 Office of the CTO Problem: Enumeration != Naming • System Administers expect that names are deterministic. Enumeration is non-deterministic. – Racing modprobes (hack: serialized by udev in RHEL6) – Racing firmware loading – Racing udev renames (fixed Sept’09) – PCI depth-first discovery varies based on motherboard layout • Undefined relationship between chassis label and kernel name • Only one name for each device allowed 5 Office of the CTO Current Solutions^WHacks • ifcfg-eth0 and 70-persistent-net.rules – introduces state to stateless systems • pci=bfsort – Whitelists, assumes PCI bus topology is meaningful • Force sane PCI Bus layout – Breadth-first vs. depth-first list – PCI Express is switched, not a bus hierarchy anymore • PXELINUX + ks=bootif – Only works for 1 NIC, and only if you use PXE We need a better solution. 6 Office of the CTO Standards! • HP added NIC ordering information to SMBIOS vendor fields – Displayed by dmidecode, but not otherwise used • Dell added labels to device objects in SMBIOS 2.6 standard – PowerEdge 10G, 11G implement this • Dell proposed labels and index in ACPI _DSM in PCI Firmware Great, so now we have PCI device to BIOS label mappings. Let’s use them! 7 Office of the CTO Idea #1: Rename devices 8 Office of the CTO Code #1: biosdevname & udev rules • Biosdevname written • Udev rules call biosdevname • Distros didn’t like it – “not upstream enough” • Didn’t solve all the problems – USB network devices – Systems w/o BIOS information – Names limited to 15 characters – Still only 1 “correct” name for each device 9 Office of the CTO Shootdown #1: 10 Office of the CTO Idea #2: /dev/netdev/eth0 11 Office of the CTO Shootdown #2: 12 Office of the CTO Idea #3: Punt to the OS Installers! 13 Office of the CTO Proposal #3: Installer Screen ---------- Network Configuration ------------------------ Default [ ] | SMBIOS Names [x] | Driver Names [] | MAC Names [] ----------------------------------------------------------------------- eth0 | Addin_NIC_1 | ice0 | ----------------------------------------------------------------------- eth1 | Embedded_NIC_1 | bce0 | ----------------------------------------------------------------------- eth2 | Embedded_NIC_2 | bce1 | ----------------------------------------------------------------------- eth3 | Embedded_NIC_3 | bce2 | ----------------------------------------------------------------------- eth4 | Embedded_NIC_4 | bce3 | ----------------------------------------------------------------------- ------------ | Next | ------------ 14 Office of the CTO Shootdown #3: 15 Office of the CTO Idea #4: libnetdevname • Export names from BIOS into sysfs – SMBIOS 2.6 standard method, or HP vendor method (patch in linux-next) – PCI SIG Firmware Working Group ECN, ACPI _DSM (pending) • Userspace library maps BIOS name to kernel name extern int netdev_kernelname_to_alias (char *, struct alias **); extern int netdev_alias_to_kernelname (char *, char *); • All userspace programs that handle network names need to be patched to call libnetdevname – ethtool, iproute2, net-tools patches written – NetworkManager, distro installers still needed # ifconfig “Embedded NIC 1” # ethtool –p “Embedded NIC 2” 16 Office of the CTO libnetdevname futures • Handle add-in PCI cards • Additional names “by function” – “public”, “dmz”, “storage”, “backup”, “admin”, … • Methods to get names from other sources • Handle non-PCI devices • Add method to show which NIC is the “boot device” http://linux.dell.com/wiki/index.php/Oss/libnetdevname [email protected] [email protected] 17 Office of the CTO Call to Action • Got a better idea? Suggest it! • BIOS authors: add ACPI _DSM with labels • Kernel: accept our patches to expose names from BIOS (in linux-next on 7/30) • Network tools authors: incorporate libnetdevname • OS installers: incorporate libnetdevname • Network GUI tools (NetworkManager): display all available names for each interface somehow. 18 Office of the CTO Thanks • Greg Kroah-Hartman • Marco d'Itri • Alex Chiang • David Miller • Bryan Kadzban • Bjorn Helgaas • Alan Cox • Scott James Remnant • Neil Horman • Stephen Hemminger • Dan Williams • Thomas Cantwell • Kay Sievers • John Linville • Chip Webb • Narendra K • Sujit K M • Mukund Khatri • Jordan Hargrave • David Zeuthen • Charles Rose • Peter Jones • Bill Fink • Richard Chan • Jon Masters • Rob Townley • Vijay Nijhawan • Bill Nottingham • Kurt Van Dijck • Vinod Kutty • Ben Hutchings • Hannes Reinecke • Jesse Barnes • Dann Frazier • Karl O. Pinc 19 Office of the CTO .

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    19 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us