Programming Interface Information: This information is NOT intended to be used as Programming Interfaces of z/VM.

#### MKPDU

Prolog

Control Block Contents
MKPDU DSECT

Storage Layout

Cross Reference (Contains links to field and bit definitions)

#### MKPDU Prolog

     NAME       : HCPMKPDU
     DESCRIPTION: LinkAG Marker Protocol-Data-Unit (PDU)
                  Control Block
     DSECT      : MKPDU
     FUNCTION   : This control block maps the IEEE 802.3ad-2000
                  version 1 Marker PDU and Marker Response
                  PDU structure.
                  The Marker protocol allows LinkAG Logic to
                  request the transmission of a Marker PDU on a
                  given port.  The Marker PDU is received by the
                  connected switch and a Marker Response PDU is
                  returned on the same port back to our LinkAG
                  logic.  When our LinkAG logic requests
                  transmission of a Marker PDU on a given port
                  and does not transmit any further MAC Client
                  PDUs that relate to a given set of
                  conversations until the corresponding Marker
                  Response PDU is received from that link, then
                  it can be certain that there are no MAC Client
                  PDUs related to those conversations still to
                  be received by the connected switch.  The use
                  of the Marker protocol can therefore allow our
                  LinkAG logic a means of determining the point
                  at which a given set of conversations can
                  safely be reallocated from one port to another
                  without the danger of causing frames in those
                  conversations to be misordered.
                  Offset          Marker PDU Field      Length
                  +***************------------+
                  x'00'   | Destination Address       |  6
                  +***************------------+
                  x'06'   | Source Address            |  6
                  +***************------------+
                  x'0C'   | Length / Type             |  2
                  +***************------------+
                  x'0E'   | Subtype                   |  1
                  +***************------------+
                  x'0F'   | Version Number            |  1
                  +***************------------+
                  x'10'   | TLV_type                  |  1
                  +***************------------+
                  x'11'   | Marker Information Length |  1
                  +***************------------+
                  x'12'   | Requester Port            |  2
                  +***************------------+
                  x'14'   | Requester System          |  6
                  '      +***************------------+
                  x'1A'   | Requester Transaction ID  |  4
                  +***************------------+
                  x'1C'   | Reserved                  |  2
                  +***************------------+
                  x'1D'   | TLV_type Terminator       |  1
                  +***************------------+
                  x'1E'   | Terminator Length         |  1
                  +***************------------+
                  x'1F'   | Reserved                  | 90
                  +***************------------+
                  x'78'   | FCS                       |  4
                  +***************------------+
                  x'80'
                  Destination Address (DA):
                  The DA in all Marker and Marker Response PDUs is the
                  Slow_Protocols_Multicast address (01-80-C2-00-00-02).
                  Source Address (SA):
                  The SA in Marker and Marker Response PDUs is the
                  individual MAC address associated with the port from
                  which the PDU is transmitted.
                  Length/Type:
                  Marker and Marker Response PDUs are always Type
                  encoded, and carry the Slow Protocol type field.  The
                  encoding of this type field is 0x8809.
                  Subtype:
                  The Subtype field identifies the specific Slow
                  Protocol being encapsulated.  Both Marker and Marker
                  Response PDUs carry the Marker_subtype value 0x02
                  Version number:
                  This identifies the Marker protocol version;
                  implementations conformant to IEEE 802.3ad of the
                  standard carry the value 0x01.
                  TLV_type:
                  This indicates the nature of the information carried
                  in this TLV-tuple.  Marker Information is encoded as
                  the integer value 0x01; Marker Response Information is
                  encoded as the integer value 0x02.
                  Marker_Information_Length:
                  This field indicates the length (in octets) of this
                  TLV-tuple.  Both Marker and Marker Response
                  information use a length value of 16 (0x10).
                  Requester_Port:
                  The port number assigned to the port by the Requester
                  (the System sending the initial Marker PDU), encoded
                  as an unsigned integer.
                  Requester_System:
                  The Requester's System ID, encoded as a MAC address.
                  Requester_Transaction_ID:
                  The transaction ID allocated to this request by the
                  requester, encoded as an integer.
                  Pad:
                  This field is used to align TLV-tuples on 16-byte
                  memory boundaries.  It is transmitted as zeroes in
                  Marker PDUs; in Marker Response PDUs, this field may
                  be transmitted as zeroes, or with the contents of this
                  field from the Marker PDU triggering the response.
                  The field is ignored on receipt in all cases.
                  TLV_type:
                  This field indicates the nature of the information
                  carried in this TLV-tuple.  Terminator (end of
                  message) information carries the integer value 0x00.
                  Terminator_Length:
                  This field indicates the length (in octets) of this
                  TLV-tuple.  Terminator information uses a length value
                  of 0 (0x00).
                  Reserved:
                  These 90 octets are reserved for use in future
                  extensions to the protocol.  It is transmitted as
                  zeroes in Marker PDUs; in Marker Response PDUs, this
                  field may be either transmitted as zeroes, or with the
                  contents of this field from the Marker PDU triggering
                  the response.  The field is ignored on receipt in all
                  cases.
                  FCS:
                  This field is the Frame Check Sequence, typically
                  generated by the underlying MAC.
     CREATED BY : The LinkAG logic (HCPSWA), when generating
                  or responding to a Marker PDU.  The DSECT
                  is used to map data sent or received on
                  a QDIO input or output queue.
     DELETED BY : The LinkAG logic (HCPSWA) or VSWITCH real
                  OSA Port output queue handler.
     ANCHORED   - None

#### MKPDU Control Block Content

#### MKPDU DSECT

    Hex   Dec Type/Val   Lng Label (dup)    Comments
    ---- ---- --------- ---- -------------- --------
    0000    0 Structure      MKPDU          LinkAG Marker Protocol-Data-Unit (PDU)
          Destination Address
    0000    0 Bitstring    6 MKPDEST        Destination Address
              0MKPDEST       MKPSPMAH       X'0180C200' MKPSPMAH
                                            Slow-Protocol-Multicast MSB
              .... ..1.      MKPSPMAL       X'0002' MKPSPMAL LSB Bytes
    0006    6 Bitstring    6 MKPSOURC       Source Address
    000C   12 Bitstring    4 MKPVID (0)     Marker Verification Fields
    000C   12 Bitstring    2 MKPLEN         Length/Type Field
              00MKPLEN       MKPSPTF        X'8809' MKPSPTF
                                            Slow-Protocol-Type Field
    000E   14 Bitstring    1 MKPSTYPE       Slow Protocol Type
              .... ..1.      MKPMARK        X'02' MKPMARK Marker PDU
    000F   15 Bitstring    1 MKPVER         Marker Protocol Version
              .... ...1      MKPVER1        X'01' MKPVER1 IEEE 802.3ad
                                            Version 1
    0010   16 Bitstring    1 MKPTLV         TLV_type Information
              .... ...1      MKPMINFO       X'01' MKPMINFO Marker Information
                                            Encoded
              .... ..1.      MKPRINFO       X'02' MKPRINFO Marker Response
                                            Encoded
    0011   17 Bitstring    1 MKPMILEN       Marker Information Length
              ...1 ....      MKPMISIZ       X'10' MKPMISIZ Marker Information
                                            length
    0012   18 Signed       2 MKPORT         Requester's Port Number
    0014   20 Bitstring    6 MKPREQID       Requester's System ID
    001A   26 Bitstring    4 MKPTRNID       Requester's Transaction ID
    001E   30 Signed       2 *              Reserved for Future Use
    0020   32 Signed       2 MKPTLVT        TLV_type Terminator
              .... ....      MKPTLVEN       X'0000' MKPTLVEN End of TLV_type
                                            information
    0022   34 Bitstring   90 *              Reserved for Future Use
    007C  124 Signed       4 MKPFCS         Frame Check Sequence
    0080  128 Bitstring    1 MKP$END (0)    The end
          Notes      : The following assembler equates are defined and can be
                used but do not appear in the control block expansion
                because they are in the PLX section and PRINT OFF,
                NOGEN are in effect.

#### MKPDU Storage Layout

    *** MKPDU - LinkAG Marker Protocol-Data-Unit (PDU)
    *
    *     +-----------------------------------------+-------------+
    *   0 |                MKPDEST                  |   (006)-    |
    *     +---------------------------+-------------+------+------+
    *   8 |        -MKPSOURC          |   MKPLEN    |:STYPE|MKPVER|
    *     +------+------+-------------+-------------+------+------+
    *  10 |MKPTLV|:MILEN|   MKPORT    |        MKPREQID-          |
    *     +------+------+-------------+-------------+-------------+
    *  18 |   -(014)    |         MKPTRNID          |/////////////|
    *     +-------------+---------------------------+-------------+
    *  20 |  MKPTLVT    |/////////////////////////////////////////|
    *     +-------------+/////////////////////////////////////////|
    *  28 |///////////////////////////////////////////////////////|
    *     =///////////////////////////////////////////////////////=
    *     |///////////////////////////+---------------------------+
    *  78 |///////////////////////////|          MKPFCS           |
    *     +---------------------------+---------------------------+
    *
    *** MKPDU - LinkAG Marker Protocol-Data-Unit (PDU)

#### MKPDU Cross Reference

    Symbol         Dspl Value
    -------------- ---- -----
    MKP$END        0080
    MKPDEST        0000
    MKPFCS         007C
    MKPLEN         000C
    MKPMARK        000E 02
    MKPMILEN       0011
    MKPMINFO       0010 01
    MKPMISIZ       0011 10
    MKPORT         0012
    MKPREQID       0014
    MKPRINFO       0010 02
    MKPSOURC       0006
    MKPSPMAH       0000 0MKPDEST
    MKPSPMAL       0000 02
    MKPSPTF        000C 00MKPLEN
    MKPSTYPE       000E
    MKPTLV         0010
    MKPTLVEN       0020 00
    MKPTLVT        0020
    MKPTRNID       001A
    MKPVER         000F
    MKPVER1        000F 01
    MKPVID         000C

This information is based on z/VM V6R1.0. Last updated on 18 Feb 2010 at 08:50:38 EDT.
Copyright IBM Corporation, 1990, 2008