NDMBK Back to Index page
 
Prolog 
Control Block Contents 
   NDMBK DSECT
Storage Layout 
Cross Reference (Contains links to field and bit definitions)
Programming Interface Information:
This information is NOT intended to be
used as Programming Interfaces of z/VM.


  NDMBK Prolog Top of page
 
 NAME       : HCPNDMBK
 DESCRIPTION: Network Device Message Block
 DSECT      : NDMBK
 FUNCTION   :
              Define a structure to represent a Network Device Message.
              One NDMBK exists to represent each message frame
              created for a Network Interface Device (NID).
 LOCATED BY -
   NIDNDMHD = Pointer to the first NDMBK for the device.
   NIDNDMTL = Pointer to the last NDMBK for the device.
 CREATED BY :
              Receipt of a message for a Network Interface Device.
 DELETED BY :
              Delivery of a message for a Network Interface Device.
 RELOCATION CONSIDERATIONS : None
 GENERAL NOTES      : - Mapped in the system execution space.
              - Not known by hardware.
 
 
  NDMBK Control Block Content Top of page
 

 NDMBK DSECT Top of page
Hex Dec Type/Val Lng Label (dup) Comments ---- ---- --------- ---- -------------- -------- 0000 0 Structure NDMBK Network Device Message Block Chain pointers (maintained by the NDMBK user). 0000 0 Dbl-Word 8 NDMPTRS (0) Forward and Backward Pointers 0000 0 Address 4 NDMFPNT Host logical address of next NDMBK. 0004 4 Address 4 NDMBPNT Host logical address ofBK previous NDMBK. Link to message buffer. For the primary NDMBK (NDMPRIME) this includes the pointer to the associated buffer storage. For a cloned NDMBK (NDMCLONE) this includes the pointer to the primary NDMBK. 0008 8 Bitstring 8 NDMSPEC Primary or Cloned message fields Message data parameters. This represents the length and address of a message contained within the associated buffer area. 0010 16 Bitstring 8 NDMPARMS (0) Message parms <length,address> 0010 16 Signed 4 NDMBYTES Bytes in this fragment 0014 20 Address 4 NDMDATA Pointer to message data Static attributes (maintained by the support routines). 0018 24 Bitstring 1 NDMATTR Message Attributes 1... .... NDMALLOC X'80' NDMALLOC - Storage was allocated .1.. .... NDMFRAME X'40' NDMFRAME - Allocated a 4K frame ..1. .... NDMPRIME X'20' NDMPRIME - This is a PRIMARY NDMBK ...1 .... NDMCLONE X'10' NDMCLONE - This is a CLONE NDMBK .... 1... NDMVSWCH X'08' NDMVSWCH - Received on VSWITCH Input Q .... .1.. NDMBRIDG X'04' NDMBRIDG - Received on Bridge Port INP Q .... ..1. NDMENCAP X'02' NDMENCAP - Encapsulated Frame .... ...1 NDMBYVLN X'01' NDMBYVLN - Bypass VLAN Checking Beginning of NDMBK "application" data. 00000019 NDMHDR2 * Offset of application header Data Transfer type (valid for first fragment in datagram). 0019 25 Bitstring 1 NDMDTYPE Datagram type 00000000 NDMUCDAT 0 NDMUCDAT - Unicast data 00000004 NDMMCDAT 4 NDMMCDAT - Multicast data 00000008 NDMBCDAT 8 NDMBCDAT - Broadcast data Data Transfer flags (valid for any fragment). 001A 26 Bitstring 1 NDMFLAGS Message Flags 1... .... NDMDVHDR X'80' NDMDVHDR - NDMBK includes Device Header .1.. .... NDMXDATA X'40' NDMXDATA - NDMBK includes XFER Data ..1. .... NDMHOLD X'20' NDMHOLD - NDMBK is on Hold ...1 .... NDMFLOOD X'10' NDMFLOOD - NDMBK is to Flood the segment .... 1... NDMSNRTR X'08' NDMSNRTR - NDMBK Source is NetRouter .... .1.. NDMTNRTR X'04' NDMTNRTR - NDMBK Target is NetRouter .... ..1. NDMLLFRM X'02' NDMLLFRM - NDMBK is a Link Layer frame .... ...1 NDMLLMOD X'01' NDMLLMOD - NDMBK is modified (redirected) Data Transfer disposition (valid for first fragment). 001B 27 Bitstring 1 NDMDISP Message Disposition 00000000 NDMPEND 0 NDMPEND - Allocated pending transfer 00000004 NDMOK 4 NDMOK - Delivered to target 00000008 NDMRTR 8 NDMRTR - Delivered to a router 0000000C NDMECP 12 NDMECP - Delivered Encapsulated Packet 00000010 NDMDSC 16 NDMDSC - Discarded 00000014 NDMERR 20 NDMERR - Packet error 000000FF NDMRCYC 255 NDMRCYC - On Recycle L:NDMBK List Total Payload Length (total datagram length excluding the size of the QDIO Header) 001C 28 Signed 4 NDMTOTLN Total bytes in datagram Data Transfer destination (valid in first fragment). For a Link Layer datagram (QDIO Format 02) NDMLLFRM==1 and NDMDMAC holds the destination MAC address. For an IP Layer datagram in PASSTHRU mode, NDMLLFRM==1 and NDMDMAC holds the destination MAC address. For an IP Layer datagram (non-passthru) NDMLLFRM==0 and the QDIO Header holds the destination IP Address. 0020 32 Bitstring 8 NDMDEST (0) Link Layer Destination 0020 32 Signed 2 NDMVLAN VLAN ID 0022 34 Bitstring 6 NDMDMAC Destination MAC address Fields relating to a subchain. When multiple buffers represent a single logical message, NDMCHAIN may act as the anchor for a subchain, pointing to a list of NDMBK elements. NDMPARTS should contain the number of elements on this chain. 0028 40 Address 4 NDMCHAIN Host logical address of the first NDMBK of a fragment chain, chained with NDMFPNT/NDMBPNT 002C 44 Signed 2 NDMPARTS Total fragments (NDMCHAIN) 002E 46 Signed 2 NDMPRTY VLAN Priority Bits Source Identification (NIDBK). No action is taken to protect the NIDBK from destruction, so the NDMSRCBK->NIDBK field is ONLY designed to act as an identifier to avoid delivering a frame to the originator (and to help with debug). 0030 48 Address 4 NDMSRCBK Pointer to NIDBK (Source) Data Transfer Frame Type (valid in fragment 1). Note that these are only the most common frame types in our environment. 0034 52 Signed 2 NDMFTYPE Payload frame type 00000800 NDMFTYPE_IPV4 X'0800' NDMFTYPE_IPV4 - Payload is an IPv4 frame 00000806 NDMFTYPE_ARP X'0806' NDMFTYPE_ARP - Payload is an ARP frame 000086DD NDMFTYPE_IPV6 X'86DD' NDMFTYPE_IPV6 - Payload is an IPv6 frame 000080DA NDMFTYPE_IVL X'80DA' NDMFTYPE_IVL - Payload is an IVL-MPDU User defined codes : 0000FF01 NDMFTYPE_ICMPNA X'FF01' NDMFTYPE_ICMPNA - Payload is an ICMPv6 Neig Advertisement 0036 54 Bitstring 2 * Reserved End of NDMBK structure. 0000001F NDMLEN2 (*-NDMHDR2) Length of application header 0038 56 Bitstring 1 NDM$END (0) End of NDMBK 00000038 NDMBKLN *-NDMBK Length of GBEBK in bytes 00000007 NDMBKSZ (*-NDMBK+7)/8 Size of GBEBK in doublewords Overlay NDMSPEC for a Primary NDMBK. 0008 8 Address 4 NDMBUFAD Host logical address of original buffer. 000C 12 Signed 4 NDMRFCTR Reference counter Overlay NDMSPEC for a Cloned NDMBK. 0008 8 Character 4 NDMCLNID Clone eye-catcher (c'COPY') 000C 12 Address 4 NDMORIG Host logical address of Primary NDMBK.
 
 
  NDMBK Storage Layout Top of page
 
          
*** NDMBK - Network Device Message Block
*
*     +---------------------------+---------------------------+
*   0 |         NDMFPNT           |         NDMBPNT           |
*     +---------------------------+---------------------------+
*   8 |                       NDMSPEC                         |
*     +---------------------------+---------------------------+
*  10 |         NDMBYTES          |         NDMDATA           |
*     +------+------+------+------+---------------------------+
*  18 |:ATTR |:DTYPE|:FLAGS|:DISP |         NDMTOTLN          |
*     +------+------+------+------+---------------------------+
*  20 |  NDMVLAN    |                NDMDMAC                  |
*     +-------------+-------------+-------------+-------------+
*  28 |         NDMCHAIN          |  NDMPARTS   |  NDMPRTY    |
*     +---------------------------+-------------+-------------+
*  30 |         NDMSRCBK          |  NDMFTYPE   |/////////////|
*     +---------------------------+-------------+-------------+
*
*** NDMBK - Network Device Message Block
          
*** Overlay for NDMSPEC in NDMBK
*
*     +---------------------------+---------------------------+
*   8 |         NDMBUFAD          |         NDMRFCTR          |
*     +---------------------------+---------------------------+
*  10
*
*** Overlay for NDMSPEC in NDMBK
          
*** Overlay for NDMSPEC in NDMBK
*
*     +---------------------------+---------------------------+
*   8 |         NDMCLNID          |         NDMORIG           |
*     +---------------------------+---------------------------+
*  10
*
*** Overlay for NDMSPEC in NDMBK
 
 
  NDMBK Cross Reference Top of page
 
 
Symbol         Dspl Value
-------------- ---- -----
NDM$END        0038
NDMALLOC       0018 80
NDMATTR        0018
NDMBCDAT       0019 00000008
NDMBKLN        0038 00000038
NDMBKSZ        0038 00000007
NDMBPNT        0004
NDMBRIDG       0018 04
NDMBUFAD       0008
NDMBYTES       0010
NDMBYVLN       0018 01
NDMCHAIN       0028
NDMCLNID       0008
NDMCLONE       0018 10
NDMDATA        0014
NDMDEST        0020
NDMDISP        001B
NDMDMAC        0022
NDMDSC         001B 00000010
NDMDTYPE       0019
NDMDVHDR       001A 80
NDMECP         001B 0000000C
NDMENCAP       0018 02
NDMERR         001B 00000014
NDMFLAGS       001A
NDMFLOOD       001A 10
NDMFPNT        0000
NDMFRAME       0018 40
NDMFTYPE       0034
NDMFTYPE_ARP   0034 00000806
NDMFTYPE_ICMPNA
               0034 0000FF01
NDMFTYPE_IPV4  0034 00000800
NDMFTYPE_IPV6  0034 000086DD
NDMFTYPE_IVL   0034 000080DA
NDMHDR2        0018 00000019
NDMHOLD        001A 20
NDMLEN2        0036 0000001F
NDMLLFRM       001A 02
NDMLLMOD       001A 01
NDMMCDAT       0019 00000004
NDMOK          001B 00000004
NDMORIG        000C
NDMPARMS       0010
NDMPARTS       002C
NDMPEND        001B 00000000
NDMPRIME       0018 20
NDMPRTY        002E
NDMPTRS        0000
NDMRCYC        001B 000000FF
NDMRFCTR       000C
NDMRTR         001B 00000008
NDMSNRTR       001A 08
NDMSPEC        0008
NDMSRCBK       0030
NDMTNRTR       001A 04
NDMTOTLN       001C
NDMUCDAT       0019 00000000
NDMVLAN        0020
NDMVSWCH       0018 08
NDMXDATA       001A 40
 
This information is based on z/VM 7.3.0 Last updated on 22 Jun 2022 at 15:53:03 EDT.
Copyright IBM Corporation, 1990, 2022