Interface names
The interface names are assigned by the Linux® network stack.
Interface names are of the form <base_name><n> where <base_name> is a base name that is used for a particular interface type. <n> is an index number that identifies an individual interface of a particular type.
| Base name | Interface type | Device driver module | Hardware |
|---|---|---|---|
| eth | Ethernet | qeth, lcs | OSA-Express features |
| eth | Ethernet | mlx4_en | RoCE Express feature |
| eth | Ethernet | mlx5_core | RoCE Express feature (Connect X-4) |
| Base name | Interface type | Device driver module | Comment |
|---|---|---|---|
| hsi | HiperSockets™ , virtual NIC | qeth | Real HiperSockets or virtual NIC type HiperSockets coupled to a guest LAN |
| eth | virtual NIC | qeth | QDIO virtual NIC coupled to a guest LAN or virtual switch |
When the first device for a particular interface name is set online, it is assigned the index number 0, the second is assigned 1, the third 2, and so on. For example, the first HiperSockets interface is named hsi0, the second hsi1, the third hsi2, and so on.
When a network device is set offline, it retains its interface name. When a device is removed, it surrenders its interface name and the name can be reassigned as network devices are defined in the future. When an interface is defined, the Linux kernel always assigns the interface name with the lowest free index number for the particular type. For example, if the network device with an associated interface name hsi1 is removed while the devices for hsi0 and hsi2 are retained, the next HiperSockets interface to be defined becomes hsi1.
State that eth name space is shared, also in RoCE and qeth chapters?