DEBUG TCPIP SET Commands

  • 2928543N
  • 05-Aug-1997
  • 14-Dec-1999
  • 19

Archived Content: This information is no longer maintained and is provided 'as is' for your convenience.

Issue

TCPIP SET COMMANDS

The following SET commands are only to be used at the request of Novell Technical Support engineers. Some of the SET commands perform a large number of disk I/Os and will effect server performance when enabled.

SET TCP IP MAXIMUM SMALL ECBS = 512 - 65534 (1024 default)
     =====================================================
+ This parameter allows the setting of the small ECB pool. By default, 1024 buffers are preallocated for IP applications to take advantage of. The most common use of these small ECBs ( 256 bytes in size, as opposed the the main ECB's that are the size of the max. physical receive packet buffer - default 4224 ) are when doing IP Fragmentation, when sending out an ICMP ECHO request, the Border Manager/ICS DNS resolver code.

The default should be enough but if IP appears to hang on the system, try allocating more small ECBs using this SET command. At the same time, verify that the "receive discarded, no available buffers" count in MONITOR -> LAN/WAN DRIVERS is at, or very close to, 0. Non 0 values may point to the fact that
1. there are not enough preallocated packet receive buffers (increase the minimum number of packet receive buffers by a factor of 2!) or
2. there may be a problem with the LAN card or driver - try exchanging this as a test.

SET TCP MINIMUM RETRANSMISSION TIMEOUT = 2 - 6 (2 default)
     ========================================================

If, for performance reasons, you detect that there's a large number of retransmissions being sent at the TCP level (check TCPCON -> STATISTICS -> TCP -> retransmissions), you may want to use this set command to change the retransmission timeout from the default of 2 TCP ticks (1 TCP Tick = 224ms) to 4.

Under normal conditions on a LAN, there should be no reason to change the default value. On a slow WAN link where latency is an issue, there may be a need to increase this value (reference the number of TCP retransmissions in TCPCON beforehand).
Note that unnecessarely setting this parameter (e.g. trying to work around network problems) may slow down performance depending on the type of application you are running. This is due to the fact that TCP will wait longer before retransmitting any lost packets.

SET Tcp Maximum Packet Retransmission = 5-12 (default 12)

In some cases where TCP based fault tolerant applications need to switchover when a problem occurs, it may be useful to reduce the number of retransmissions so that the connection times out earlier. Once the fault tolerant application detects that the initial connection has gone away through a reset, it may then try to contact another host and proceed with what it has to do.

There is no specific SET command to reduce a TCP connection's timeout, so customer will need to do this by reducing the number of retransmissions. Currently the stack retransmits requests 12 times, at which point it resets the connection of no ACK arrives from the other side. This can often take up to 10 minutes based on the fact that
a) retransmissions take place exponentially (first retransmission may take place after 1 second, the second after 2, the third after 4 and so on) and
b) there's a cap on the maximum timeout of 2 minutes (even if the exponential retransmission timeouts exceed 2 minutes, the stack will retransmit 2 minutes later)

Note that this retransmission SET command must be used with great care. Reducing the value too low could reset TCP connections unecessarely when routing or network problems occur.

SET Tcp Maximum Initial Window = 2-4 (default 4)
==========================================

This is the maximum number of packets to use for the initial TCP window. Although normally set to 4 per RFC2414, it can be reduced to 2 or 3 if needed for performance reasons.

Tcp Connection Establishment timeout = 0-335 Ticks (75 Seconds)

If a customer is experiencing problems trying to establish TCP connections to a Novell server, it may be due to the fact that the application has reached the maximum number of connections it can have in the half-open (or syn_received) state. Customers should check the TCPCON -> PROTOCOLS-> TCP -> Conections field to verify if connections are stuck in the
Use this option to change the TCP connection establishment timeout in ticks. By default, Novell's TCPIP stack can have 5 half open TCP connections in the backlog queue. The backlog queue may be increased by the application when issuing a TCP listen request. (Note that the SET Maximum Pending TCP Connection Requests allows application developers to increase the backlog queue size beyond the default 128 if needs be). The new TCP connections coming in at this point will get dropped until such time as one of the half open connections is serviced. TCP connections can stay in the half open state for up to 75 seconds. The above SET command allows users to drop the time the TCP connection stays in the half open state. This SET command is to be used only for troubleshooting possible connection errors, and should NOT be used in a production environment.

Note that the "SET TCP DEFEND SYN ATTACKS = " parameter also effects the state of the half open connections. When this parameter is enabled and we hit the maximum number of allowed connections in the half open state, the stack will clean up those connections (delete them) and issue a warning to the server console explaining that you may be experiencing a denial of service attack.

Set Allow non local broadcasts

This set command will enable the stack to allow processing of IP broadcast packets from host with non local source IP address. When the stack processes an incoming broadcast, it will first check to see if the source IP address associated with sender of the broadcast lies on the same IP subnet as our node. If it doesn't, it will drop the packet by default. By setting this parameter, it will force the stack to process the packet even though the subnet check condition fails.

SET rip2 route aggregation = ON/OFF (default is ON)

This SET command allows RIP2 to handle discontiguous subnet advertisements in a RIP2 packet. An example of where this set command may be appropriate is in the following network design. Site A,, network address 10.0.0.0/255.255.0.0 is connected to network 10.1.0.0/255.255.00 via the 137.65.0.0/255.255.0.0 network. With the default TCPIP stack configuration, RIP2 will not advertise the 10.0.0.0/255.255.0.0 and 10.1.0/255.255.0.0 network addresses, but just the 10.0.0.0/255.0.0. Setting the above set command to ON will make sure both networks get advertised.

SET Allow IP Address Duplicates

TCPIP.NLM will not allow to bind IP Addresses that conflict with other nodes
in the network. If you want to bind the IP Address even if it conflicts with
another node on the network, set this variable to On. This SET command should never be used in a production environment but may be useful in a test environment to help troubleshoot problems.

SET Maximum Pending TCP Connection Requests = 0-4096

Applications that currently increase the size of the backlog queue from the default 128 will need to correspondingly set the Maximum Number of Pending TCP Connections beyond 128. This parameter will rarely need to be changed although heavy LDAP traffic has created the necessity for this in the past.

     SET TCP DEFEND SYN ATTACKS = ON/OFF (default=OFF)
     ================================================
     + Enabling this will clear all half-open connections when a the 32nd (assuming the backlog queue set by the application is at 32 for example) connection request is received. The 32nd request will be dropped but the 33rd thru n will be processed.
When these half-open connections are cleared, a message will be displayed at the server console explaining that you may be experiencing a denial of service attack. This message should be investigated to see if the system is being attacked, or whether the application (e.g NetWare/IP, GroupWise) needs to increase the size of the backlog queue.

     + Disabling this will not clear the half opened connections. > 33rd connection request and beyond will be discarded until such time as one of the 32 connection request in the backlog queue moves to the fully open (established) state thereby freeing a connection slot in the backlog queue for processing.

     *NOTE: There is a timeout associated with connection requests. After 75 seconds by default, half-open connections with be cleared. This timeout can be changed using the SET Tcp Connection Establishment timeout explained above.

     SET ALWAYS ALLOW IP FRAGMENTATION = ON/OFF (default = OFF)
     ==========================================================
     + Makes sure that the DF (Don"t fragment) bit is enabled/disabled in the FLAG field of the IP header
     + May be used in cases where a large IP packets requiring fragmentation fail. Some intermediate routers may not support the Path MTU algorithm correctly and resulting ICMP destination unreachable packets may not contain correct information, or may not be generated at all. This only occurs with old style router OS's. When such problems occur, turn the SET command to ON.

     SET TCP IP DEBUG = 0/1 (default = 0)
     ================================
     + Dumps all incoming and outgoing packets processed by the TCPIP.NLM. Useful in debugging problems with packet translation, filtering or connection issues.
     + The displayed information scrolls down very quickly on the system console in this mode and administrators may not be able to get all the information they require. The best way to capture the information is to run the CONLOG.NLM, SET the debug parameter to 1, capture the IP information, and finally unload CONLOG.NLM. The CONSOLE.LOG file in SYS:\ETC will contain all information written to the system console.

     SET TCP SOCKET DEBUG = 0-4 (default = 0)
     ======================================
     + Dumps information regarding RAW sockets. Currently the TCPIP.NLM does not support
     many raw sockets hence this parameter
     cannot provide too much useful information.
     + Mode 1 shows basic information at the server console
       Mode 2 shows basic information at both server console and SYS:ETC\TCPIP.LOG
       Mode 3 shows advanced information at the server console
       Mode 4 shows advanced information at both server console and SYS:ETC\TCPIP.LOG

     SET TCP TRACE = 0-4 (Default = 0)
     ==============================
     + Dumps information about the current state of the TCP connection table.
     + Mode 1 shows basic information at the server console
       Mode 2 shows basic information at both server console and SYS:ETC\TCPxxxx.LOG
       (where xxxx begins with 0000)

     Example:-

     1) SET TCP TRACE = 2 (Mode 2!) and;
     2) FTP client (193.97.18.1) makes a FTP request to NW FTP server (193.97.18.100)

     c:\win\home\admin>ftp 193.97.18.100
     Connected to 193.97.18.100.
     220 sjf-ts-paddy FTP server (NetWare v4.11) ready.
     User (193.97.18.100:(none)):
     331 Password required for (none).
     Password:
     500 "PASS ": command not understood.
     Login failed.
     ftp> quit
     221 Goodbye.

     3) Output of TCP0000.LOG file:-

     Trace started: Wed Mar 19 17:22:50 1997

     Tracing 193.97.18.100.21 <--> 193.97.18.1.1129

     R 0 ms ----S- SEQ 01A8D1D7 ACK 00000000 LEN 0 WIN 8192 URG 0
     S 0 ms -A--S- SEQ 006E37A0 ACK 01A8D1D8 LEN 0 WIN 32768 URG 0
     R 56 ms -A---- SEQ 01A8D1D8 ACK 006E37A1 LEN 0 WIN 8760 URG 0
     S 0 ms -AP--- SEQ 006E37A1 ACK 01A8D1D8 LEN 52 WIN 32768 URG 0
     R 112 ms -A---- SEQ 01A8D1D8 ACK 006E37D5 LEN 0 WIN 8708 URG 0
     R 1344 ms -AP--- SEQ 01A8D1D8 ACK 006E37D5 LEN 13 WIN 8708 URG 0
     S 0 ms -AP--- SEQ 006E37D5 ACK 01A8D1E5 LEN 35 WIN 32755 URG 0
     R 168 ms -A---- SEQ 01A8D1E5 ACK 006E37F8 LEN 0 WIN 8673 URG 0
     R 336 ms -AP--- SEQ 01A8D1E5 ACK 006E37F8 LEN 7 WIN 8673 URG 0
     S 0 ms -AP--- SEQ 006E37F8 ACK 01A8D1EC LEN 38 WIN 32748 URG 0
     R 168 ms -A---- SEQ 01A8D1EC ACK 006E381E LEN 0 WIN 8635 URG 0
     R 2576 ms -AP--- SEQ 01A8D1EC ACK 006E381E LEN 6 WIN 8635 URG 0
     S 0 ms -AP--- SEQ 006E381E ACK 01A8D1F2 LEN 14 WIN 32742 URG 0
     S 0 ms -A-R-- SEQ 006E382C ACK 01A8D1F2 LEN 0 WIN 32742 URG 0

     + Mode 3 shows advanced information at the server console
       Mode 4 shows advanced information at both server console and SYS:ETC\TCPxxxx.LOG
       (where xxxx begins with 0000)

     Example:-

     1) SET TCP TRACE = 4 and
     2) client (193.97.18.1) makes a FTP request to NW FTP server (193.97.18.100)

     c:\winn\home\admin>ftp 193.97.18.100
     Connected to 193.97.18.100.
     220 sjf-ts-paddy FTP server (NetWare v4.11) ready.
     User (193.97.18.100:(none)):
     331 Password required for (none).
     Password:
     500 "PASS ": command not understood.
     Login failed.
     ftp> quit
     221 Goodbye.

     3) Output of TCP0001.LOG file

     Trace started: Wed Mar 19 17:19:05 1997

     Tracing 193.97.18.100.21 <--> 193.97.18.1.1128

     R 0 ms ----S- SEQ 01A565E4 ACK 00000000 LEN 0 WIN 8192 URG 0
     --------------------------------------------------------------------------
     cstate LISTEN snduna 00000000 rcvnxt 00000000 rttavg 0 ms
     ostate DEAD sndnxt 00000000 rcvadv 00000000 rttdev 0 ms
     flags 0 sndmax 00000000 rcvlim 00008000 rto 0 ms
     mss 0 sndurg 00000000 rcvurg 00000000 keepalive 7199808 ms
     css 0 wlack 00000000 wlseq 00000000 oalarm 0 ms
     cwnd 0 sndwnd 0 rcvwnd 0 dupacks 0
     ssthresh 0 sndqlen 0 rcvmin 512 nrxmit 0

     S 0 ms -A--S- SEQ 006D3880 ACK 01A565E5 LEN 0 WIN 32768 URG 0
     --------------------------------------------------------------------------
     cstate SYN_RECEIVED snduna 006D3880 rcvnxt 01A565E5 rttavg 0 ms
     ostate TRANSMIT sndnxt 006D3881 rcvadv 01A5E5E5 rttdev 3080 ms
     flags 808 sndmax 006D3881 rcvlim 01A5E5E5 rto 2912 ms
     mss 1460 sndurg 006D3880 rcvurg 01A565E5 keepalive 7199808 ms
     css 1460 wlack 006D3880 wlseq 01A565E4 oalarm 2912 ms
     cwnd 1460 sndwnd 8192 rcvwnd 32768 dupacks 0
     ssthresh 65535 sndqlen 0 rcvmin 512 nrxmit 0

     R 0 ms -A---- SEQ 01A565E5 ACK 006D3881 LEN 0 WIN 8760 URG 0
     --------------------------------------------------------------------------
     cstate SYN_RECEIVED snduna 006D3880 rcvnxt 01A565E5 rttavg 0 ms
     ostate TRANSMIT sndnxt 006D3881 rcvadv 01A5E5E5 rttdev 3080 ms
     flags 1008 sndmax 006D3881 rcvlim 01A5E5E5 rto 2912 ms
     mss 1460 sndurg 006D3880 rcvurg 01A565E5 keepalive 7199808 ms
     css 1460 wlack 006D3880 wlseq 01A565E4 oalarm 2912 ms
     cwnd 1460 sndwnd 8192 rcvwnd 32768 dupacks 0
     ssthresh 65535 sndqlen 0 rcvmin 512 nrxmit 0

     S 0 ms -AP--- SEQ 006D3881 ACK 01A565E5 LEN 52 WIN 32768 URG 0
     --------------------------------------------------------------------------
     cstate ESTABLISHED snduna 006D3881 rcvnxt 01A565E5 rttavg 0 ms
     ostate TRANSMIT sndnxt 006D38B5 rcvadv 01A5E5E5 rttdev 2352 ms
     flags 800 sndmax 006D38B5 rcvlim 01A5E5E5 rto 2240 ms
     mss 1460 sndurg 006D3881 rcvurg 01A565E5 keepalive 7199808 ms
     css 1460 wlack 006D3881 wlseq 01A565E5 oalarm 2240 ms
     cwnd 4380 sndwnd 8760 rcvwnd 32768 dupacks 0
     ssthresh 65535 sndqlen 52 rcvmin 512 nrxmit 0

     R 112 ms -A---- SEQ 01A565E5 ACK 006D38B5 LEN 0 WIN 8708 URG 0
     --------------------------------------------------------------------------
     cstate ESTABLISHED snduna 006D3881 rcvnxt 01A565E5 rttavg 0 ms
     ostate TRANSMIT sndnxt 006D38B5 rcvadv 01A5E5E5 rttdev 2352 ms
     flags 1000 sndmax 006D38B5 rcvlim 01A5E5E5 rto 2240 ms
     mss 1460 sndurg 006D3881 rcvurg 01A565E5 keepalive 7199808 ms
     css 1460 wlack 006D3881 wlseq 01A565E5 oalarm 2240 ms
     cwnd 4380 sndwnd 8760 rcvwnd 32768 dupacks 0
     ssthresh 65535 sndqlen 52 rcvmin 512 nrxmit 0

     R 2576 ms -AP--- SEQ 01A565E5 ACK 006D38B5 LEN 13 WIN 8708 URG 0
     --------------------------------------------------------------------------
     cstate ESTABLISHED snduna 006D38B5 rcvnxt 01A565E5 rttavg 168 ms
     ostate IDLE sndnxt 006D38B5 rcvadv 01A5E5E5 rttdev 1960 ms
     flags 1000 sndmax 006D38B5 rcvlim 01A5E5E5 rto 1792 ms
     mss 1460 sndurg 006D3881 rcvurg 01A565E5 keepalive 7199808 ms
     css 1460 wlack 006D3881 wlseq 01A565E5 oalarm 7197120 ms
     cwnd 7300 sndwnd 8708 rcvwnd 32768 dupacks 0
     ssthresh 65535 sndqlen 0 rcvmin 512 nrxmit 0

     SET TCP ARP DEBUG = ON/OFF (Default = OFF)
     ==========================================
     + Rarely required for support
     + Dumps ECB information associated with every ARP packet generated or processed
     + May be useful to use in cases where an abend occurs with an ARP packet process

     Example:-

     SJF-TS-PADDY:bind ip ne2000 addr=193.97.18.100
     Several boards are using the NE2000 LAN driver
          1. Novell NE2000 using Slot 65535, I/O ports 300h to 31Fh, Interrupt 3h, Frame type:
     ETHERNET_802.2
          2. Novell NE2000 using Slot 65535, I/O ports 300h to 31Fh, Interrupt 3h, Frame type:
     ETHERNET_II
     Select board to bind: 2
     TCPIP-4.0-112: Bound to board 3 with IP address 193.97.18.100 and mask FF.FF.FF.0.

     TCPIP:**** ARPNewMapping: Sending ECB *****
     ecb_pt=0x20919E0, ueb_data_ln=28, block_ct=0x1ueb_done_anr=0xF1216806,
     ueb_done_ctx=0x2718158datablock=0x2091A1C, len=0x1C

     IP LAN protocol bound to Novell NE2000

     SET TCP ECB DEBUG = 0-4 (Default = 0)
     ==========================================
     + Prints ECBs given to IP_Send before sending data
     + Useful for troubleshooting TCPIP abends or fragmentation issues with IP

     SET TCP IPCP DEBUG = 0-4 (Default = 0)
     ===================================
     + Display negotiated IPCP options when establishing a call over PPP with MPR
     + Mode 1 gives the calls. As we increment the mode number, it dumps info from within each call
     made.

     Example:-

     When a MPR router tries to establish a PPP call with an ISP where ith requests the ISP to assign
     the MPR an IP address
     automatically, the follwoing output will be sent to the system console when the IPCP SET
     command is enabled:-

     TCPIP:IPCP: RECEIVE ACK ADDRESS=0x1010103 /* our interface is 3.1.1.1! */

     SET TCP RIP DEBUG = 0-4 (default = 0)
     =================================
     + Used to verify the sending of RIP requests on the serverconsole
        Mode 1 shows RIP send information at the server console
        Mode 2 shows RIP send information at the server console (unload and load conlog to capture
     to a file)
        Mode 3 shows RIP send/receive information at the server console
        Mode 4 shows RIP send/receive information at the server console (unload and load conlog to
     capture to a file)

     Example (Mode 1/2)

     TCPIP:RIPSendResponse: ecb_pt 0x26ee158, version 0x1, rif_pt 0x20a0e30, destination 0x0port
     0x0
     TCPIP:RIPSend with ecb 0x26ee158, version 0x1, rif_pt 0x20a0e30, destination 0x0, port 0x0
     (Board 3)
     TCPIP:Sending ECB to UDPSendTOIF rif_pt is 0x20a0e30 (Board 3)
     TCPIP:RIPSend->UDPSendToIF ecb_pt=0x26EE158, ueb_data_ln=52,
     block_ct=0x1ueb_done_anr=0xF03C4B70, ueb_done_ctx=0x50544620datablock=0x26EE194,
     len=0x34

     TCPIP:
     Entered RIPAdvertiseRoutes with interface 0x20a0e30 destination 0x0, port 0, requested version
     1
     TCPIP:Check if a Wan Client is Inconnected on this Interface

     SET TCP WAN DEBUG = 0-4 (Default = 0)
     ===================================
     + Dumps IP (not CSL!) debug information to server console when a WAN call is being made with
     the MPR.
     + Mode 1 gives the calls. As we increment the mode number, it dumps info from within each call
     made.

     Example:-

     (1) Establishing a PPP connection from MPR to remote PPP server via CALLMGR with the DEBG
     SET option enabled returns the
     following information to the system console:-

     TCPIP:cm_MakeCall: ApplMakeCallWithRetries Succeeded

     TCPIP:cm_MakeCall returning 0
     TCPIP-4.0-112: Bound to board 5 with IP address 3.1.1.1 and mask FF.0.0.0.
     TCPIP-4.0-205: Initiated WAN connection to SJF-TS-MICK-PPP1.

     (2) If we manually try to disconnect the same call that was established above, we would see the
     following on the system
     console:-

     TCPIP:Tearing Down Static Routes for call SJF-TS-MICK-PPP1

     TCPIP:Remote Addr is 0x2010103 and rt_router.ip_long is 0x1010103

     TCPIP:Remote Addr is 0x2010103 and rt_router.ip_long is 0xfe1261c1

     TCPIP:Remote Addr is 0x2010103 and rt_router.ip_long is 0x641261c1

     TCPIP:Calling IPInvalidateAllWANCallRoutes with map_pt 0x20ecf78
     TCPIP:Calling IPInvalidateAllWANCallRoutes1 with map_pt 0x20ecf78
     TCPIP:Calling cm_CFreeCacheEntry with map_pt 20ecf78

     TCPIP:Calling IP_Flush_Caches

      3-19-97 6:04:31 pm: TCPIP-4.0-207
          Disconnected WAN call to SJF-TS-MICK-PPP1.

     SET ALLOW IP ADDRESS DUPLICATES = ON / OFF
     ===========================================
     + allows testing of IP addresses in a test environment
     + when SET to ON, the BIND will go ahead even if a duplicate IP address is discovered through
     a gratuitous ARP

     NOTE: These set commands only work with tcpip v. 4.00o or later. (currently TCPN05.exe. This
     file is available from
     support.novell.com). If an old tcpip stack is being used, you must place, in the etc\tcpip.cfg file
     the following command:
     TcpMSSinternetlimit on . This setting will be erased EVERY time you go into inetcfg.nlm and will
     have to be reset. Also, the
     tcpip.nlm needs to be unloaded and reloaded if you use the cfg setting. For these reasons, it is
     recommended that you run the
     latest version of the tcpip stack and use the set commands.

     SET USE SPECIFIED MTU = OFF/ON
     ===============================
     Forces IP to use User specified MTU size (see SET maximum interface MTU command). When
     this SET command is enabled, we do
     not query the MTU of the LAN card for it"s MTU size but query the next SET command to
     obtain that parameter. This SET command may be useful when IP fragmentation, due to differing
     network topologies, is reducing performance and administrators want to
     manually define a standard MTU size for their network. This corresponds to the previously
     undocumented TCPMSSINTERNETLIMIT
     that could be defined in TCPIP.CFG file.

     SET MAXIMUM INTERFACE MTU = 576
     =================================
     +This value defines the MTU size that should be used when the SET USE SPECIFIED MTU
     parameter is enabled. If no value is
     defined, it will default to 576 Bytes. Values between 576 and 5000 may be implemented.

MIB Structure for TCPIP dump tool

TcIpRoutesTable has routine to dump routing table.

From UDPIP.H (IP, ICMP and UDP stats and info)

typedef struct IP_MIB
{
    unsigned long ip_Attributes; /* number of attributes supported */
    unsigned long ipForwarding; /* forwarding code (see below) */
    unsigned long ipDefaultTTL; /* default TTL */
    unsigned long ipInReceives; /* number of packets received */
    unsigned long ipInHdrErrors; /* rcv'd header errors */
    unsigned long ipInAddrErrors; /* rcv'd destination addr errors */
    unsigned long ipForwDatagrams;/* number of packets forwarded */
    unsigned long ipInUnknownProtos;/* xport protocol not here */
    unsigned long ipInDiscards; /* non-error discarded receives */
    unsigned long ipInDelivers; /* rcv'd packets passed up */
    unsigned long ipOutRequests; /* packets given to IP for xmit */
    unsigned long ipOutDiscards; /* xmits which failed */
    unsigned long ipOutNoRoutes; /* no route to destination */
    unsigned long ipReasmTimeout; /* maximum reassembly timeout */
    unsigned long ipReasmReqds; /* IP fragments received */
    unsigned long ipReasmOKs; /* successful reassemblies */
    unsigned long ipReasmFails; /* failing reassemblies */
    unsigned long ipFragOKs; /* packets fragmented */
    unsigned long ipFragFails; /* couldn't be fragmented */
    unsigned long ipFragCreates; /* fragments created here */
    unsigned long ipAddrTable; /* place holder for address table */
    unsigned long ipRouteTable; /* place holder for routing table */
    unsigned long ipNetToMediaTable; /* place hold for ARP table */
    unsigned long ipRoutingDiscards; /* good route entries discarded */
} IP_MIB;

typedef struct ICMP_MIB
{
    unsigned long icmp_Attributes; /* number of attributes */

    /* inbound message statistics */
    unsigned long icmpInMsgs; /* total msgs received */
    unsigned long icmpInErrors; /* total msgs in error */
    unsigned long icmpInDestUnreachs; /* dest unreachable msgs */
    unsigned long icmpInTimeExcds; /* time exceeded msgs */
    unsigned long icmpInParmProbs; /* param problems msgs */
    unsigned long icmpInSrcQuenchs; /* source quench msgs*/
    unsigned long icmpInRedirects; /* redirect msgs*/
    unsigned long icmpInEchos; /* echo msgs */
    unsigned long icmpInEchoReps; /* echo reply msgs */
    unsigned long icmpInTimestamps; /* timestamp msgs */
    unsigned long icmpInTimestampReps; /* timestamp reply msgs */
    unsigned long icmpInAddrMasks; /* addr mask request msgs */
    unsigned long icmpInAddrMaskReps; /* addr mask reply msgs */

    /* outbound message statistics */
    unsigned long icmpOutMsgs; /* total msgs sent */
    unsigned long icmpOutErrors; /* total failing sends */
    unsigned long icmpOutDestUnreachs; /* dest unreachable msgs */
    unsigned long icmpOutTimeExcds; /* time exceeded msgs */
    unsigned long icmpOutParmProbs; /* param problems msgs */
    unsigned long icmpOutSrcQuenchs; /* source quench msgs*/
    unsigned long icmpOutRedirects; /* redirect msgs*/
    unsigned long icmpOutEchos; /* echo msgs */
    unsigned long icmpOutEchoReps; /* echo reply msgs */
    unsigned long icmpOutTimestamps; /* timestamp msgs */
    unsigned long icmpOutTimestampReps; /* timestamp reply msgs */
    unsigned long icmpOutAddrMasks; /* addr mask request msgs */
    unsigned long icmpOutAddrMaskReps; /* addr mask reply msgs */
} ICMP_MIB;

typedef struct UDP_MIB
{
    unsigned long udp_Attributes; /* number of attributes supported */
    unsigned long udpInDatagrams; /* datagrams passed up to clients */
    unsigned long udpNoPorts; /* datagrams discarded: no client */
    unsigned long udpInErrors; /* other received errors */
    unsigned long udpOutDatagrams;/* sent datagrams */
} UDP_MIB;

From TCP.H (TCP stats and info)

typedef struct TCP_MIB {
    unsigned long tcp_Attributes; /* number of attributes here */
    unsigned long tcpRtoAlgorithm; /* retransmit-timeout (RTO) algorithm */
    unsigned long tcpRtoMin; /* minimum RTO in milliseconds */
    unsigned long tcpRtoMax; /* maximum RTO in milliseconds */
    unsigned long tcpMaxConn; /* maximum number of connections */
    unsigned long tcpActiveOpens; /* closed to syn-sent transitions */
    unsigned long tcpPassiveOpens; /* listen to syn-rcvd transitions */
    unsigned long tcpAttemptFails; /* syn-sent or syn-rcvd to closed */
    unsigned long tcpEstabResets; /* established or close-wait to closed */
    unsigned long tcpCurrEstab; /* established or closed-wait connections */
    unsigned long tcpInSegs; /* segments received */
    unsigned long tcpOutSegs; /* segments sent no retransmits */
    unsigned long tcpRetranSegs; /* segments retransmitted */
    unsigned long tcpConnTable; /* place holder for connection table */
    unsigned long tcpInErrs; /* received segments with errors */
    unsigned long tcpOutRsts; /* segments sent with RST */
} TCP_MIB;

From IGMP.H (IGMP stats and info that may be useful for troubleshooting PIM problems)

typedef struct IGMP_MIB
{
    unsigned long igmp_Attributes; /* number of attributes */

    /* inbound message statistics */
    unsigned long igmpInMsgs; /* total msgs received */
    unsigned long igmpInErrors; /* total msgs in error */
    unsigned long igmpInTooShort; /* Msg received too short */
    unsigned long igmpInBadChksum; /* Msg received with bad checksum */
    unsigned long igmpInQueries; /* Membership queries received */
    unsigned long igmpInBadQueries; /* Invalid membership queries received */
    unsigned long igmpInReports; /* Membership reports received */
    unsigned long igmpInBadReports; /* Invalid Membership reports received */
    unsigned long igmpInOurReports; /* Membership reports for group we are in */
    unsigned long igmpInLeaves; /* Leave group message received */
    unsigned long igmpInBadLeaves; /* Leave group message received */
    unsigned long igmpOutReports; /* Membership reports sent */
    unsigned long igmpOutLeaves; /* Leave group message sent */
    unsigned long igmpOutQueries; /* Membership queries sent */
    unsigned long igmpOutErrReports; /* Errors sending membership reports */
    unsigned long igmpOutMsgs; /* IGMP messagess sent */
    unsigned long igmpOutErrMsgs; /* Errors sending IGMP messages */

} IGMP_MIB;

typedef struct PIM_MIB
{
    unsigned long pim_Attributes; /* number of attributes */

    /* inbound message statistics */
    unsigned long PimInMsgs; /* total msgs received */
    unsigned long PimInErrors; /* total msgs in error */
    unsigned long PimInTooShort; /* Msg received too short */
    unsigned long PimInBadChksum; /* Msg received with bad checksum */
    unsigned long PimInQueries; /* Membership queries received */
    unsigned long PimInBadQueries; /* Invalid membership queries received */
    unsigned long PimInReports; /* Membership reports received */
    unsigned long PimInBadReports; /* Invalid Membership reports received */
    unsigned long PimInOurReports; /* Membership reports for group we are in */
    unsigned long PimInLeaves; /* Leave group message received */
    unsigned long PimInBadLeaves; /* Leave group message received */
    unsigned long PimInJoinPrune; /* PIM Join messages received*/
    unsigned long PimInAssert; /* PIM Join messages received*/
    unsigned long PimInGraft; /* PIM Join messages received*/
    unsigned long PimInGraftAck; /* PIM Join messages received*/
    unsigned long PimInHello; /* PIM Join messages received*/

    unsigned long PimOutReports; /* Membership reports sent */
    unsigned long PimOutLeaves; /* Leave group message sent */
    unsigned long PimOutQueries; /* Membership queries sent */
    unsigned long PimOutErrReports; /* Errors sending membership reports */
    unsigned long PimOutMsgs; /* Pim messagess sent */
    unsigned long PimOutErrMsgs; /* Errors sending pim messages */
    unsigned long PimOutJoinPrune; /* PIM Join messages received*/
    unsigned long PimOutAssert; /* PIM Join messages received*/
    unsigned long PimOutGraft; /* PIM Join messages received*/
    unsigned long PimOutGraftAck; /* PIM Join messages received*/
    unsigned long PimOutHello; /* PIM Join messages received*/
} PIM_MIB;

Custom statistics: things we want to count which aren't in the generic statistics nor in the Internet MIB (taken from IP_FAST.386) !!!

    ip_out_hits // Outbound Cache Hits
    ip_out_misses // Outbound Cache Misses
    ip_in_hits // Inbound Cache Hits
    ip_in_misses
    IP_used_buckets // Hash Bucket Collisions
    IP_lookups // Routing Database Lookups
    IP_cache_flush // Routing Cache Flushes
    IP_invalidate // Routing Entries Invalidated
    IP_small_ecbs // Small ECBs Allocated
    IP_free_small_ecbs // Available Small ECBs
    IP_fwd_ecbs // Forwarded ECBs Outstanding
    IP_busy // Arrivals with Queue Busy
    IP_utilities // Utility Tasks Queued
    IP_busy_utilities // Utility Tasks with Queue Busy

// Call Manager Statistics

    cm_perm_ct dd 0 ; number of CMgr permanent entries
    cm_cache_ct dd 1 ; number of normal entries allocated
    cm_free_ct dd 1 ; number of allocated entries free
    cm_cache_hit dd 0
    cm_cache_miss dd 0
    cm_cache_hit_miss dd 0
    cm_flush_ct dd 0 ; complete cache flushes
    cm_discard_ct dd 0 ; waiting packets discarded
    cm_hash_used_ct dd 0 ; hash entries already in

Feedback service temporarily unavailable. For content questions or problems, please contact Support.