Working with qeth devices
Typical tasks for working with qeth devices include creating group devices, finding out the type of a network adapter, and setting a device online or offline.
About this task
Most of these tasks involve writing to and reading from attributes of qeth group devices in sysfs. Using sysfs is useful on a running system where you want to make dynamic changes. If you want to make the changes persistent across IPLs, your distribution might provide a configuration tool for this task.
Not all attributes are applicable to each device. Some attributes apply only to HiperSockets or only to OSA-Express CHPIDs in QDIO mode, other attributes are applicable to IPv4 interfaces only. See the task descriptions for the applicability of each attribute.
Task | Corresponding attributes | Possible attribute values |
---|---|---|
Creating a qeth group device | group | n/a |
Removing a qeth group device | ungroup | 0 or 1 |
Setting the layer2 attribute | layer2 | 0 or 1, see Layer 2 and layer 3¹ |
Using priority queueing | priority_queueing |
prio_queueing_vlan prio_queueing_skb prio_queueing_prec prio_queueing_tos no_prio_queueing no_prio_queueing:0 no_prio_queueing:1 no_prio_queueing:2 no_prio_queueing:3 |
Specifying the number of inbound buffers | buffer_count | integer in the range 8 - 128. The default is 64 for OSA devices and 128 for HiperSockets devices |
Finding out the maximum frame size | inbuf_size | n/a, read-only |
Specifying the relative port number | portno | integer, either 0 or 1, the default is 0 |
Finding out the type of your network adapter | card_type | n/a, read-only |
Setting a device online or offline | online | 0 or 1 |
Finding out the interface name of a qeth group device | if_name | n/a, read-only |
Finding out the bus ID of a qeth interface | none | n/a |
Activating an interface | none | n/a |
Deactivating an interface | none | n/a |
Recovering a device | recover | 1 |
Enabling and disabling TCP segmentation offload | none | n/a |
Turning inbound checksum calculations on and off | none | n/a |
Turning outbound checksum calculations on and off | none | n/a |
Isolating data connections | isolation | none, drop, forward |
Displaying and resetting QETH performance statistics | performance_stats | 0 or 1 |
Capturing a hardware trace | hw_trap | arm disarm |
¹A value of -1 means that the layer is not set and that the default layer setting is used when the device is set online. |
Function | Corresponding attributes | Possible attribute values |
---|---|---|
Configuring a network device as a member of a Linux bridge | bridge_role bridge_state bridge_hostnotify |
primary, secondary, none active, standby, inactive 0 or 1 |
Advanced packet-handling configuration | vnicc/bridge_invisible vnicc/flooding vnicc/learning vnicc/mcast_flooding vnicc/rx_bcast vnicc/takeover_learning vnicc/takeover_setvmac vnicc/learning_timeout |
0 or 1 0 or 1 0 or 1 0 or 1 0 or 1 0 or 1 0 or 1 integer in the range 60 - 86400 the default is 600 |
Task | Corresponding attributes | Possible attribute values |
---|---|---|
Setting up a Linux router | route4 route6 |
primary_router secondary_router primary_connector secondary_connector multicast_router no_router |
Taking over IP addresses | ipa_takeover/enable | 0 or 1 or toggle |
ipa_takeover/add4 ipa_takeover/add6 ipa_takeover/del4 ipa_takeover/del6 |
IPv4 or IPv6 IP address and mask bits | |
ipa_takeover/invert4 ipa_takeover/invert6 |
0 or 1 or toggle | |
Configuring a device for proxy ARP | rxip/add4 rxip/del4 |
IPv4 IP address |
Configuring a device for NDP proxy | rxip/add6 rxip/del6 |
IPv6 IP address |
Configuring a device for virtual IP address (VIPA) | vipa/add4 vipa/add6 vipa/del4 vipa/del6 |
IPv4 or IPv6 IP address |
Configuring a HiperSockets device for AF_IUCV addressing | hsuid | 1 to 8 characters |
Setting up a HiperSockets network traffic analyzer | sniffer | 0 or 1 |
¹ not valid for HiperSockets |
- Use the qethconf command instead of using the attributes for IPA, proxy ARP, and VIPA directly (see qethconf - Configure qeth devices).
- Your distribution might also provide a distribution-specific configuration tool. See your distribution documentation for distribution-specific alternatives.
/sys/bus/ccwgroup/drivers/qeth/0.0.a100
/sys/bus/ccwgroup/devices/0.0.a100
/sys/devices/qeth/0.0.a100
/sys/class/net/eth0/device
all lead to the attributes for the same device. For example,
the following commands are all equivalent and return the same value:
# cat /sys/bus/ccwgroup/drivers/qeth/0.0.a100/if_name
eth0
# cat /sys/bus/ccwgroup/devices/0.0.a100/if_name
eth0
# cat /sys/devices/qeth/0.0.a100/if_name
eth0
# cat /sys/class/net/eth0/device/if_name
eth0
The path through /sys/class/net becomes available when the device is first set online and the interface is created. The path persists until the device is ungrouped. Furthermore, it might lead to a different device if the assignment of interface names changes. A change can occur after rebooting or when devices are ungrouped and new group devices created.
- Work through one of the paths that are based on the device bus-ID.
- Your distribution might provide a distribution-specific configuration file through which you can set the attributes. See your distribution documentation for distribution-specific information.