SetSubnetPrioTosMask statement

Use the SetSubnetPrioTosMask statement to define a mapping of IPv4 Type of Service (ToS) byte or IPv6 Traffic Class to outbound interface device and virtual LAN (VLAN) user priority values. It maps priorities for interfaces that use OSA-Express configured in QDIO mode. If this statement is not specified, TCP/IP uses the system default ToS or Traffic Class mask and priority levels for all interfaces currently defined for IPv4 (RFC 791).

The current IPv4 ToS byte format defines the first 3 bits to be the precedence bits (for example, priority). Therefore, the default for the subnet ToS mask, if this statement is not specified, is 11 100 000. The same default mask also applies to IPv6 Traffic Class.

Restrictions:
  • Only Queued Direct I/O (QDIO) devices can support priorities.
  • A maximum of 16 SetSubnetPrioTosMask statements can be specified for each TCP/IP stack.
This statement sets up ToS or Traffic Class to priority mapping for those devices. QDIO supports four priority levels, 1 - 4, with 4 being the lowest priority. Following is the default mapping of these four priorities to the various ToS byte or Traffic Class values:
TOS                Priority
00000000              4
00100000              4
01000000              3
01100000              2
10000000              1
10100000              1
11000000              1
11100000              1

The ToS byte or Traffic Class is also used by other network devices (for example, routers and switches) to determine the priority of a packet.

Guideline: If Enterprise Extender has set ToS bytes, this overrides those settings.

Tip: An outbound packet with a ToS or Traffic Class value that consists of zeros allows for prioritizing outbound OSA-Express data using the WorkLoad Manager service class importance level. See the information about Prioritizing outbound OSA-Express data using the WorkLoad Manager service class in z/OS Communications Server: IP Configuration Guide for more information about using WorkLoad Manager service class importance level values with OSA-Express QDIO interfaces.

Syntax

Read syntax diagramSkip visual syntax diagram
>>-SetSubnetPrioTosMask--| Place Braces and Parameters on Separate Lines |-><

Place Braces and Parameters on Separate Lines

|--+-{-----------------------------------+----------------------|
   +-| SetSubnetPrioTosMask Parameters |-+   
   '-}-----------------------------------'   

SetSubnetPrioTosMask Parameters

   .-SubnetAddr --0.0.0.0-.                         
|--+----------------------+--SubnetTosMask --mask--------------->
   '-SubnetAddr --address-'                         

   .----------------------------------------------------------.   
   V .-PriorityTosMapping 4tos 0----------------------------. |   
>----+------------------------------------------------------+-+--|
     '-PriorityTosMapping --priority tos--+---------------+-'     
                                          '-user_priority-'       

Parameters

SubnetAddr
The local subnet interface address. This can be an IPv4 address or an interface name. A value of 0 indicates that the mask is the same for all interfaces. The default is all interfaces. All interfaces are the same as coding a value of 0, or not specifying this parameter.
Requirement: If an interface name is specified, it must match a name specified on one of the following statements in the TCP/IP profile:
  • LINK statement for an IPv4 interface
  • INTERFACE statement for an IPv4 or IPv6 interface
SubnetTosMask
SubnetTosMask contains eight bits, left-aligned, for the ToS or Traffic Class mask. For example, 101 would be 10 100 000. There is no default.

Requirement: This is a required parameter.

PriorityTosMapping
Three values to indicate each priority level to ToS or Traffic Class value mapping. The first value of each mapping is an integer to indicate the device priority level, the second value is eight bits, left-aligned, to indicate the ToS or Traffic Class value, and the third value is an optional integer to indicate the user priority (0 - 7, where 0 is the lowest priority). User priority is also known as virtual LAN (VLAN) priority.
Restrictions:
  • If this parameter is not specified for a ToS or Traffic Class value, that value maps to a device priority value of 4, and a user priority value of 0.
  • A maximum of 32 PriorityTosMapping parameters can be specified.

Result: Coding the virtual LAN (VLAN) user priority causes a frame to be sent out based on the IEEE 802.1Q specification, which establishes a standard method for tagging Ethernet frames with VLAN priority and membership information. Specifically, a VLAN priority-tagged frame is used to convey packet priority to the switches; it has a value of NULL for VLANID. A full VLAN-tagged frame contains both the priority and non-null VLANID. If you have switches in your network that do not support the IEEE 802.1Q standard or that are not properly configured for these types of frames, the frames might be dropped by the switch.

Examples

SetSubnetPrioTosMask
{
SubnetAddr NSQDIO3
SubnetTosMask 11100000 
PriorityTosMapping 1 11100000 7 
PriorityTosMapping 1 11000000 7 
PriorityTosMapping 2 10100000 6 
PriorityTosMapping 2 10000000 5 
PriorityTosMapping 2 01100000 5 
PriorityTosMapping 3 01000000 3 
PriorityTosMapping 4 00100000 2 
PriorityTosMapping 4 00000000 0
}
SetSubnetPrioTosMask
{
SubnetTosMask 11100000 
PriorityTosMapping 1 11100000 
PriorityTosMapping 1 11000000 
PriorityTosMapping 1 10100000 
PriorityTosMapping 1 10000000 
PriorityTosMapping 2 01100000 
PriorityTosMapping 2 01000000 
PriorityTosMapping 3 00100000 
PriorityTosMapping 4 00000000
}