Programming Interface Information:
This information is NOT intended to be used as Programming Interfaces of z/VM. |
LCPDU
Control Block Contents
LCPDU DSECT
Cross Reference (Contains links to field and bit definitions)
LCPDU Prolog
NAME : HCPLCPDU DESCRIPTION: LinkAG LACP Protocol-Data-Unit (PDU) c/b DSECT : LCPDU FUNCTION : This control block maps the IEEE 802.3ad-2000 version 1 LACP PDU structure. The Link Aggregation Control Protocol (LACP) provides a standardized means for exchanging information between Partner Systems on a link to allow their Link Aggregation Control instances to reach agreement on the identity of the Link Aggregation Group to which the link belongs, move the link to that Link Aggregation Group, and enable its transmission and reception functions in an orderly manner. Destination Address (DA): The DA in all LACP PDUs is the Slow_Protocols_Multicast address (01-80-C2-00-00-02). Source Address (SA): The SA in LACP PDU is the individual MAC address associated with the port from which the PDU is transmitted. Length/Type: LACP 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. LACP PDUs carry the carry the subtype value 0x01. Version number: This identifies the LACP protocol version; implementations conformant to IEEE 802.3ad of the standard carry the value 0x01. TLV_type = Actor Information: This field indicates the nature of the information carried in this TLVtuple. Actor information is identified by the value 0x01. Actor_Information_Length: This field indicates the length (in bytes) of this TLV-tuple, Actor information uses a length value of 20 (0x14). Actor_System_Priority: The priority assigned to this System (by management or administration policy), encoded as an unsigned integer. Actor_System: The Actor's System ID, encoded as a MAC address. Actor_Key: The operational Key value assigned to the port by the Actor, encoded as an unsigned integer. Actor_Port_Priority: The priority assigned to this port by the Actor (the System sending the PDU; assigned by management or administration policy), encoded as an unsigned integer. Actor_Port: The port number assigned to the port by the Actor (the System sending the PDU), encoded as an unsigned integer. Actor_State: The Actor's state variables for the port, encoded as individual bits within a single byte, as follows: 1) LACP_Activity is encoded in bit 0. This flag indicates the Activity control value with regard to this link. Active LACP is encoded as a 1; Passive LACP is encoded as a 0 2) LACP_Timeout is encoded in bit 1. This flag indicates the Timeout control value with regard to this link. Short Timeout is encoded as a 1; Long Timeout is encoded as a 3) Aggregation is encoded in bit 2. If TRUE (encoded as a 1), this flag indicates that the System considers this link to be Aggregatable; i.e., a potential candidate for aggregation. If FALSE (encoded as a 0), the link is considered to be Individual; i.e., this link can be operated only as an individual link. 4) Synchronization is encoded in bit 3. If TRUE (encoded as a 1), the System considers this link to be IN_SYNC; i.e., it has been allocated to the correct Link Aggregation Group, the group has been associated with a compatible Aggregator, and the identity of the Link Aggregation Group is consistent with the System ID and operational Key information transmitted. If FALSE (encoded as a 0), then this link is currently OUT_OF_SYNC; i.e., it is not in the right Aggregation. 5) Collecting is encoded in bit 4. TRUE (encoded as a 1) means collection of incoming frames on this link is definitely enabled; i.e., collection is currently enabled and is not expected to be disabled in the absence of administrative changes or changes in received protocol information. Its value is otherwise FALSE (encoded as a 0); 6) Distributing is encoded in bit 5. FALSE (encoded as a 0) means distribution of outgoing frames on this link is definitely disabled; i.e., distribution is currently disabled and is not expected to be enabled in the absence of administrative changes or changes in received protocol information. Its value is otherwise TRUE (encoded as a 1); 7) Defaulted is encoded in bit 6. If TRUE (encoded as a 1), this flag indicates that the Actor's Receive machine is using Defaulted operational Partner information, administratively configured for the Partner. If FALSE (encoded as a 0), the operational Partner information in use has been received in a LACPDU; 8) Expired is encoded in bit 7. If TRUE (encoded as a 1), this flag indicates that the Actor's Receive machine is in the EXPIRED state; if FALSE (encoded as a 0), this flag indicates that the Actor's Receive machine is not in the EXPIRED state. NOTE-The received values of Defaulted and Expired state are not used by LACP; however, knowing their values can be useful when diagnosing protocol problems. Reserved: These 3 bytes are reserved for use in future extensions to the protocol. They shall be ignored on receipt and shall be transmitted as zeroes to claim compliance with Version 1 of this protocol. TLV_type = Partner Information: This field indicates the nature of the information carried in this TLV-tuple. Partner information is identified by the integer value 0x02. Partner_Information_Length: This field indicates the length (in bytes) of this TLV-tuple, Partner information uses a length value of 20 (0x14). Partner_System_Priority: The priority assigned to the Partner System (by management or administration policy), encoded as an unsigned integer. Partner_System: The Partner's System ID, encoded as a MAC address. Partner_Key: The operational Key value assigned to the port associated with this link by the Partner, encoded as an unsigned integer. Partner_Port_Priority: The priority assigned to this port by the Partner (by management or administration policy), encoded as an unsigned integer. Partner_Port: The port number associated with this link assigned to the port by the Partner, encoded as an unsigned integer. Partner_State: The Actor's view of the Partner's state variables, depicted in Figure 43-8 and encoded as individual bits within a single byte, as defined for Actor_State. Reserved: These 3 bytes are reserved for use in future extensions to the protocol. They shall be ignored on receipt and shall be transmitted as zeroes to claim compliance with Version 1 of this protocol. TLV_type = Collector Information: This field indicates the nature of the information carried in this TLV-tuple. Collector information is identified by the integer value 0x03 Collector_Information_Length: This field indicates the length (in bytes) of this TLV-tuple. Collector information uses a length value of 16 (0x10). CollectorMaxDelay: This field contains the value of Collector Maximum Delay of the station transmitting the LACPDU, encoded as an unsigned integer number of tens of microseconds. The range of values for this parameter is 0 to 65 535 tens of microseconds (0.65535 seconds). Reserved: These 12 bytes are reserved for use in future extensions to the protocol. They shall be ignored on receipt and shall be transmitted as zeroes to claim compliance with Version 1 of this protocol. TLV_type = Terminator: This field indicates the nature of the information carried in this TLV-tuple. Terminator (end of message) information is identified by the integer value 0x00. Terminator_Length: This field indicates the length (in bytes) of this TLV-tuple. Terminator information uses a length value of 0 (0x00). Reserved.: These 50 bytes are reserved for use in future extensions to the protocol. They are ignored on receipt and are transmitted as zeroes to claim compliance with Version 1 of this protocol. FCS: This field is the Frame Check Sequence, typically generated by the underlying MAC. VM will create the packet without the FCS, as it will be added/removed by OSA. CREATED BY : DELETED BY : NCHORED - RELOCATION CONSIDERATIONS : None
LCPDU Control Block Content
LCPDU DSECT
Hex Dec Type/Val Lng Label (dup) Comments ---- ---- --------- ---- -------------- -------- 0000 0 Structure LCPDU LinkAG LACP Protocol-Data-Unit (PDU) c/b Destination Address 0000 0 Bitstring 6 LCPDEST Destination Address 0LCPDEST LCPSPLAH X'0180C200' LCPSPLAH Slow-Protocol-Multicast MSB .... ..1. LCPSPLAL X'0002' LCPSPLAL LSB Bytes 0006 6 Bitstring 6 LCPSOURC Source Address 000C 12 Bitstring 4 LCPVID (0) LACP PDU Verification Fields 000C 12 Bitstring 2 LCPLEN Length/Type Field 00LCPLEN LCPSPTF X'8809' LCPSPTF Slow-Protocol-Type Field 000E 14 Bitstring 1 LCPSTYPE Slow Protocol Type .... ...1 LCPLACP X'01' LCPLACP LinkAG Control Protocol(LACP) 000F 15 Bitstring 1 LCPVER LACP Protocol Version .... ...1 LCPVER1 X'01' LCPVER1 IEEE 802.3ab Version 1 ***** Actor Information 0010 16 Bitstring 1 LCPTLV TLV_type Actor Information .... ...1 LCPACTOR X'01' LCPACTOR Actor Information 0011 17 Bitstring 1 LCPAILEN Actor Information Length ...1 .1.. LCPAISIZ X'14' LCPAISIZ Actor Information Length 0012 18 Bitstring 15 LCPAINFO (0) Entire LACP Actor Information 0012 18 Signed 2 LCPASYSP Actor System Priority 0014 20 Bitstring 6 LCPASYS Actor System ID 001A 26 Signed 2 LCPAKEY Actor Key 001C 28 Signed 2 LCPAPPRI Actor Port Priority 001E 30 Signed 2 LCPAPORT Actor Port Expired : Indicates the Actor's Receive machine state. 0 = Expired (not valid) 1 = Valid Defaulted : Flag indicates that the Actor's Receive Machine is using defaulted operational partner information. Distributing : Datagram Distribution State 0 = Distribution disabled 1 = Distribution enabled Collecting : Datagram Collecting State 0 = No incomming datagrams accepted 1 = Collecting incomming datagrams Synchronization : Current link status 0 = Out of SYNC (not in group) 1 = In SYNC (Allocated to the correct LinkAG group) Aggregation : Indicates that the system considers this link to be aggregatable. 0 = Individual Link 1 = Aggregatable LACP_Timeout : Indicates the time-out control value with regard to this link. 0 = Long time-out 1 = Short time-out LACP_Activity : Indicates the Activity control value with regard to this link. 0 = Passive LACP 1 = Active LACP 0020 32 Bitstring 1 LCPASTAT Actor State 1... .... LCPEXP X'80' LCPEXP Expired .1.. .... LCPDEF X'40' LCPDEF Defaulted ..1. .... LCPDIST X'20' LCPDIST Distributing ...1 .... LCPCOL X'10' LCPCOL Collecting .... 1... LCPSYNC X'08' LCPSYNC Synchronization .... .1.. LCPAGG X'04' LCPAGG Aggregation .... ..1. LCPTIMEO X'02' LCPTIMEO LACP_Timeout .... ...1 LCPCCTVY X'01' LCPCCTVY LACP_Activity ...1 11.. LCPENABL LCPCOL+LCPAGG+LCPSYNC LCPENABL Port enabled in group 0021 33 Bitstring 3 * Reserved for Future Use ***** Partner Information 0024 36 Bitstring 1 LCPPTYP TLV_type Partner Information .... ..1. LCPTYPE X'02' LCPTYPE Partner Information 0025 37 Bitstring 1 LCPPILEN Partner Information Length ...1 .1.. LCPPISIZ X'14' LCPPISIZ Partner Information Length 0026 38 Bitstring 15 LCPART (0) Entire LACP Partner Information 0026 38 Bitstring 8 LCPSYSID (0) Partner System INFO 0026 38 Signed 2 LCPSYSP Partner System Priority 0028 40 Bitstring 6 LCPSYS Partner System ID 002E 46 Signed 2 LCPKEY Partner Key 0030 48 Bitstring 4 LCPPRTID (0) Partner Port Information 0030 48 Signed 2 LCPPORTP Partner Port Priority 0032 50 Signed 2 LCPORT Partner Port 0034 52 Bitstring 1 LCPSTATE Partner State 0035 53 Bitstring 3 * Reserved for Future Use ***** Collector Information 0038 56 Bitstring 1 LCPCTVL TLV_type Collector Information .... ..11 LCPCINFO X'03' LCPCINFO Collector Information 0039 57 Bitstring 1 LCPCILEN Collector Information Length ...1 .... LCPCISIZ X'10' LCPCISIZ Collector Information Length 003A 58 Signed 2 LCPDELAY Collector Maximum Delay 003C 60 Signed 4 * (3) Reserved for Future Use 0048 72 Bitstring 1 LCPTTVL TLV_type Terminator .... .... LCPTINFO X'00' LCPTINFO Terminator Length 0049 73 Bitstring 1 LCPCTLEN Terminator Length .... .... LCPTLVEN X'00' LCPTLVEN Terminator Size 004A 74 Bitstring 50 * Reserved for Future Use 0000007C LCPMSIZE *-LCPDU Minimum size of a LACP PDU Frame Check Sequence will be added/removed by OSA LCPFCS DS F Frame Check Sequence 007C 124 Bitstring 1 LCP$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.
LCPDU Storage Layout
*** LCPDU - LinkAG LACP Protocol-Data-Unit (PDU) c/b * * +-----------------------------------------+-------------+ * 0 | LCPDEST | (006)- | * +---------------------------+-------------+------+------+ * 8 | -LCPSOURC | LCPLEN |:STYPE|LCPVER| * +------+------+-------------+-------------+------+------+ * 10 |LCPTLV|:AILEN| LCPASYSP | LCPASYS- | * +------+------+-------------+-------------+-------------+ * 18 | -(014) | LCPAKEY | LCPAPPRI | LCPAPORT | * +------+------+-------------+------+------+-------------+ * 20 |:ASTAT|////////////////////|:PTYP |:PILEN| LCPSYSP | * +------+--------------------+------+------+-------------+ * 28 | LCPSYS | LCPKEY | * +-------------+-------------+------+------+-------------+ * 30 | LCPPORTP | LCPORT |:STATE|////////////////////| * +------+------+-------------+------+--------------------+ * 38 |:CTVL |:CILEN| LCPDELAY |///////////////////////////| * +------+------+-------------+///////////////////////////| * |///////////////////////////////////////////////////////| * +------+------+-----------------------------------------+ * 48 |:TTVL |:CTLEN|/////////////////////////////////////////| * +------+------+/////////////////////////////////////////| * 50 |///////////////////////////////////////////////////////| * =///////////////////////////////////////////////////////= * |///////////////////////////+---------------------------+ * |///////////////////////////| * +---------------------------+ * *** LCPDU - LinkAG LACP Protocol-Data-Unit (PDU) c/b
LCPDU Cross Reference
Symbol Dspl Value -------------- ---- ----- LCP$END 007C LCPACTOR 0010 01 LCPAGG 0020 04 LCPAILEN 0011 LCPAINFO 0012 LCPAISIZ 0011 14 LCPAKEY 001A LCPAPORT 001E LCPAPPRI 001C LCPART 0026 LCPASTAT 0020 LCPASYS 0014 LCPASYSP 0012 LCPCCTVY 0020 01 LCPCILEN 0039 LCPCINFO 0038 03 LCPCISIZ 0039 10 LCPCOL 0020 10 LCPCTLEN 0049 LCPCTVL 0038 LCPDEF 0020 40 LCPDELAY 003A LCPDEST 0000 LCPDIST 0020 20 LCPENABL 0020 1C LCPEXP 0020 80 LCPKEY 002E LCPLACP 000E 01 LCPLEN 000C LCPMSIZE 004A 0000007C LCPORT 0032 LCPPILEN 0025 LCPPISIZ 0025 14 LCPPORTP 0030 LCPPRTID 0030 LCPPTYP 0024 LCPSOURC 0006 LCPSPLAH 0000 0LCPDEST LCPSPLAL 0000 02 LCPSPTF 000C 00LCPLEN LCPSTATE 0034 LCPSTYPE 000E LCPSYNC 0020 08 LCPSYS 0028 LCPSYSID 0026 LCPSYSP 0026 LCPTIMEO 0020 02 LCPTINFO 0048 00 LCPTLV 0010 LCPTLVEN 0049 00 LCPTTVL 0048 LCPTYPE 0024 02 LCPVER 000F LCPVER1 000F 01 LCPVID 000C
Copyright IBM Corporation, 1990, 2011