Programming Interface Information:
This information is NOT intended to be used as Programming Interfaces of z/VM. |
IPNBK
Control Block Contents
IPNBK DSECT
IPNXM DSECT
IPNMC DSECT
Cross Reference (Contains links to field and bit definitions)
IPNBK Prolog
NAME : HCPIPNBK DESCRIPTION: IP Node block DSECT : IPNBK FUNCTION : The IPNBK structure defines a relationship between a specific IP Address and a specific network device (represented by a NIDBK). When a device is subscribed to an IP Address, the IPNBK can be found by looking up the IP Address in the LAN IP Table or by following the subscription chain anchored within the NIDBK (NIDIPNHD). LOCATED BY - LANIPTBL - Pointer to multi-level indexed IP Table. NIDIPNHD - Anchor for the NIDBK subscription chain. CREATED BY : IP Address functions in module HCPIPN. DELETED BY : IP Address functions in module HCPIPN. NOTES : (1) The IPNBK is imbedded within an IPNMC block when it represents the device subscription to a Multicast IP Address. The IPNMC blocks for a single Multicast IP Address are all chained together in a Multicast subscription list anchored in the IPNXM block. (2) The IPNBK is imbedded within an IPNXM block when it represents the LAN IP Table reference for a Multicast IP Address. The IPNXM block is found via the IP Address, and it acts as the anchor for the individual device IPNMC subscriptions.
IPNBK Control Block Content
IPNBK DSECT
Hex Dec Type/Val Lng Label (dup) Comments ---- ---- --------- ---- -------------- -------- 0000 0 Structure IPNBK IP Node block IP Table Node (for an IP Unicast/Multicast entry). 0000 0 Character 1 IPNTYPE IPNBK Type 000000E4 IPNTYPUC C'U' Unicast IPNBK (Registration) 000000E7 IPNTYPXM C'X' Multicast IPNXM (Header) 000000D4 IPNTYPMC C'M' Multicast IPNMC (Subscription) 0001 1 Bitstring 5 * Reserved 0006 6 Bitstring 2 IPNOSID OSID value 0008 8 Address 4 IPNFPNT Pointer to next IPNBK 000C 12 Address 4 IPNBPNT Pointer to previous IPNBK 0010 16 Bitstring 4 IPNADDR IP Address (4 bytes) 0014 20 Address 4 IPNLINK Pointer to associated device End of the IPNBK. 0018 24 Dbl-Word 8 IPN$END (0) End of the IPNBK structure 00000018 IPNBKLN *-IPNBK Length of IPNBK in bytes 00000003 IPNBKSZ (*-IPNBK+7)/8 Size of IPNBK in doublewords IPNXM structure - The IPNXM is an extended IPNBK. Each IPNXM represents a chain of IPNMC entries. For an IP Address in the IP Multicast range, the LAN IP Table points to an IPNXM (instead of an IPNBK). The IPNXM contains the anchor for the chain of subscribed devices (each represented by an IPNMC).
IPNXM DSECT
Hex Dec Type/Val Lng Label (dup) Comments ---- ---- --------- ---- -------------- -------- 0000 0 Structure IPNXM IP Node block 0000 0 Dbl-Word 8 IPNXMNOD (3) Space for IPNBK entry 0018 24 Address 4 IPNXMLST Pointer to first IPNMC in chain 001C 28 Signed 4 IPNXMCTR Number of subscribed devices 00000020 IPNXMLN *-IPNXM Length of IPNXM in bytes 00000004 IPNXMSZ (*-IPNXM+7)/8 Size of IPNXM in doublewords IPNMC structure - The IPNMC is an extended IPNBK. Each IPNMC represents an IP Multicast subscriber. When you lookup an IP Multicast address in the LAN IP Table, it points to the first entry in a linked list of IPNMC structures. The imbedded IPNMC is chained with others belonging to the same Device (NIDBK).
IPNMC DSECT
Hex Dec Type/Val Lng Label (dup) Comments ---- ---- --------- ---- -------------- -------- 0000 0 Structure IPNMC IP Node block 0000 0 Dbl-Word 8 IPNMCNOD (3) Space for standard IPNBK entry 0018 24 Character 10 IPNMCKEY (0) Unique identifier for IPM entry 0018 24 Character 8 IPNMCUSR IPNMCKEY Userid 0020 32 Character 2 IPNMCDEV IPNMCKEY virtual device number 0022 34 Bitstring 6 IPNMCMAC MACADDR subscribed to this IP 0028 40 Address 4 IPNMCNXT Pointer to next IPNMC 002C 44 Address 4 IPNMCHDR Pointer to primary IPNXM 00000030 IPNMCLN *-IPNMC Length of IPNMC in bytes 00000006 IPNMCSZ (*-IPNMC+7)/8 Size of IPNMC in doublewords IP Multicast Address (IPM) indicator. When the IP Address byte 0 is in the range of 224-239 (x'E0'-x'EF') it designates an IP Multicast address. To determine if an IP Address is an IPM Address: (1) TM byte0,IPNMCON; If cc<3 it is NOT an IPM (2) TM byte0,IPNMCOFF; If cc>0 it is NOT an IPM The address must pass BOTH tests to be accepted as a Multicast IP Address. 1111 .... IPNMCMSK X'F0' IPM Byte 0 - Significant bits 111. .... IPNMCON X'E0' IPM Byte 0 - These bits are ON ...1 .... IPNMCOFF X'10' IPM Byte 0 - These bits are OFF
IPNBK Storage Layout
*** IPNBK - IP Node block * * +------+----------------------------------+-------------+ * 0 |:TYPE |//////////////////////////////////| IPNOSID | * +------+--------------------+-------------+-------------+ * 8 | IPNFPNT | IPNBPNT | * +---------------------------+---------------------------+ * 10 | IPNADDR | IPNLINK | * +---------------------------+---------------------------+ * *** IPNBK - IP Node block *** IPNXM - IP Node block * * +-------------------------------------------------------+ * 0 | | * = IPNXMNOD = * | | * +---------------------------+---------------------------+ * 18 | IPNXMLST | IPNXMCTR | * +---------------------------+---------------------------+ * 20 * *** IPNXM - IP Node block *** IPNMC - IP Node block * * +-------------------------------------------------------+ * 0 | | * = IPNMCNOD = * | | * +-------------------------------------------------------+ * 18 | IPNMCUSR | * +-------------+-----------------------------------------+ * 20 | IPNMCDEV | IPNMCMAC | * +-------------+-------------+---------------------------+ * 28 | IPNMCNXT | IPNMCHDR | * +---------------------------+---------------------------+ * 30 * *** IPNMC - IP Node block
IPNBK Cross Reference
Symbol Dspl Value -------------- ---- ----- IPN$END 0018 IPNADDR 0010 IPNBKLN 0018 00000018 IPNBKSZ 0018 00000003 IPNBPNT 000C IPNFPNT 0008 IPNLINK 0014 IPNMCDEV 0020 IPNMCHDR 002C IPNMCKEY 0018 IPNMCLN 002C 00000030 IPNMCMAC 0022 IPNMCMSK 002C F0 IPNMCNOD 0000 IPNMCNXT 0028 IPNMCOFF 002C 10 IPNMCON 002C E0 IPNMCSZ 002C 00000006 IPNMCUSR 0018 IPNOSID 0006 IPNTYPE 0000 IPNTYPMC 0000 000000D4 IPNTYPUC 0000 000000E4 IPNTYPXM 0000 000000E7 IPNXMCTR 001C IPNXMLN 001C 00000020 IPNXMLST 0018 IPNXMNOD 0000 IPNXMSZ 001C 00000004
This information is based on z/VM V4R3.0. Last updated on 30 Apr 2002 at 16:39:27 EDT.
Copyright IBM Corporation, 1990, 2002