2.2.10.2.16 DNSSRV_MEMORY_STATS

The DNSSRV_MEMORY_STATS structure has DNS server statistics related to memory usage for different operations on the server. It provides statistical information about memory usage since the server started or server statistics were last cleared. The structure supports allocations of two types: blocks of common (but implementation-specific) sizes, and blocks of arbitrary sizes. This allows servers to use a separate internal mechanism to optimize allocations of common sizes if they so choose. This structure MUST be formatted as follows:


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

Header

...

Memory

Alloc

Free

StdUsed

StdReturn

StdInUse

StdMemory

StdToHeapAlloc

StdToHeapFree

StdToHeapInUse

StdToHeapMemory

StdBlockAlloc

StdBlockUsed

StdBlockReturn

StdBlockInUse

StdBlockFreeList

StdBlockFreeListMemory

StdBlockMemory

MemTags (624 bytes)

...

...

Header (8 bytes): A structure of type DNSSRV_STAT_HEADER (section 2.2.10.2.1).

Memory (4 bytes): The total memory currently allocated by the servers, in bytes.

Alloc (4 bytes): The cumulative number of times memory was allocated by the server.

Free (4 bytes): The cumulative number of times memory was released by the server.

StdUsed (4 bytes): The cumulative number of times a common-size block of memory was allocated by the server.

StdReturn (4 bytes): The cumulative number of times a common-size block of memory was released by the server.

StdInUse (4 bytes): The total number of common-size blocks of allocated memory currently used by the server.

StdMemory (4 bytes): The total size, in bytes, of common-size blocks that are currently being used by the server.

StdToHeapAlloc (4 bytes): The cumulative number of arbitrary-size blocks of memory allocated from system memory.

StdToHeapFree (4 bytes): The cumulative number of arbitrary-size blocks of memory released to system memory.

StdToHeapInUse (4 bytes): The number of arbitrary-size blocks of memory currently in use.

StdToHeapMemory (4 bytes): The total size of memory, in bytes, currently used by non-standard sized blocks.

StdBlockAlloc (4 bytes): The cumulative number of common-size blocks allocated by the server.

StdBlockUsed (4 bytes): The cumulative number of common-size blocks allocated from an internal free list.

StdBlockReturn (4 bytes): The cumulative number of common-size blocks returned from an internal free list.

StdBlockInUse (4 bytes): The number of common-size blocks currently being used.

StdBlockFreeList (4 bytes): The number of common-size blocks currently on internal free lists.

StdBlockFreeListMemory (4 bytes): The total size of memory, in bytes, of common size blocks currently on internal free lists.

StdBlockMemory (4 bytes): The total size of memory, in bytes, of all currently allocated blocks.

MemTags (624 bytes): An array of 52 DNSSRV_MEMTAG_STATS (section 2.2.10.2.15) specifying memory statistics for various server operations. The table below gives the context applicable to each element of this array, where the Value column indicates the element number.

Value

Meaning

MEMTAG_NONE

0x00000001

Not related to a particular operation.

MEMTAG_PACKET_UDP

0x00000002

UDP Packets.

MEMTAG_PACKET_TCP

0x00000003

TCP Packets.

MEMTAG_NAME

0x00000004

Name-related operations.

MEMTAG_ZONE

0x00000005

Zone operations.

MEMTAG_UPDATE

0x00000006

Name updates.

MEMTAG_UPDATE_LIST

0x00000007

Record update list.

MEMTAG_TIMEOUT

0x00000008

Timeout

MEMTAG_NODEHASH

0x00000009

Node hash.

MEMTAG_DS_DN

0x0000000A

Directory server distinguished name.

MEMTAG_DS_MOD

0x0000000B

Directory server module.

MEMTAG_DS_RECORD

0x0000000C

Directory server records.

MEMTAG_DS_OTHER

0x0000000D

Other directory server related operations.

MEMTAG_THREAD

0x0000000E

Thread management.

MEMTAG_NBSTAT

0x0000000F

NBSTAT [RFC1002] packets operations.

MEMTAG_DNSLIB

0x00000010

DNS library management.

MEMTAG_TABLE

0x00000011

Record table operations.

MEMTAG_SOCKET

0x00000012

Socket operations.

MEMTAG_CONNECTION

0x00000013

Connection establishment / destruction.

MEMTAG_REGISTRY

0x00000014

Registry operations.

MEMTAG_RPC

0x00000015

RPC operations.

MEMTAG_STUFF

0x00000016

Miscellaneous operations.

MEMTAG_FILEBUF

0x00000017

File buffer operations.

MEMTAG_REMOTE

0x00000018

Remote IP address operations.

MEMTAG_EVTCTRL

0x00000019

Event control operations.

MEMTAG_SAFE

0x0000001A

Miscellaneous queuing operations.

MEMTAG_RECORD_UNKNOWN

0x0000001B

Record operations.

MEMTAG_RECORD_FILE

0x0000001C

File-based operations.

MEMTAG_RECORD_DS

0x0000001D

Directory server-based RR operations.

MEMTAG_RECORD_AXFR

0x0000001E

Complete zone transfer operations.

MEMTAG_RECORD_IXFR

0x0000001F

Single Record transfer operations.

MEMTAG_RECORD_DYNUP

0x00000020

RR operations for dynamic update.

MEMTAG_RECORD_ADMIN

0x00000021

RR operations for administration.

MEMTAG_RECORD_AUTO

0x00000022

RR operations for autoconfig.

MEMTAG_RECORD_CACHE

0x00000023

RR operations for cache.

MEMTAG_RECORD_NOEXIST

0x00000024

RR operations for non-existent records.

MEMTAG_RECORD_WINS

0x00000025

RR operations for WINS.

MEMTAG_RECORD_WINSPTR

0x00000026

RR operations for WINS-PTR.

MEMTAG_RECORD_COPY

0x00000027

RR copy operations.

MEMTAG_NODE_UNKNOWN

0x00000028

Node operations for database.

MEMTAG_NODE_FILE

0x00000029

Node operations for file.

MEMTAG_NODE_DS

0x0000002A

Node operations for directory server.

MEMTAG_NODE_AXFR

0x0000002B

Node operations for complete zone transfer.

MEMTAG_NODE_IXFR

0x0000002C

Node operations for single record transfer.

MEMTAG_NODE_DYNUP

0x0000002D

Node operations for dynamic update.

MEMTAG_NODE_ADMIN

0x0000002E

Node operations for administration.

MEMTAG_NODE_AUTO

0x0000002F

Node operations for autoconfig.

MEMTAG_NODE_CACHE

0x00000030

Node operations for cache.

MEMTAG_NODE_NOEXIST

0x00000031

Node operations for non-existent records.

MEMTAG_NODE_WINS

0x00000032

Node operations for WINS.

MEMTAG_NODE_WINSPTR

0x00000033

Node operations for WINS-PTR.

MEMTAG_NODE_COPY

0x00000034

Node operations for copy.