IP Datagram Statistics Report. (Routing Process Utilization)


 

Introduction

 

Management solutions and applications available in the market today tends to overlook the need for network administrators of both enterprises and service providers to assess resource consumption and resource utilization consumed by their prospective network’s core router device’s IP Datagram handler processes of each of the network devices.

 

Such critical resource as the IP Datagram handler process on router devices should be monitored adequately for information on IP Datagrams statistics measurements. The importance of such measure stems from the fact that it provides the administrators with a clearer picture of how much user demand is targeted towards the IP process resource and at which periods of time.

 

Knowledge of the extent of IP Datagram processes peak usage values combined with peak usage times and the duration of that peak usage will enable administrators to evaluate and plan current and future growth needs leading to better technical and better business decisions.

 

No NMS application available in the market today and indeed known to us measures and displays the IP Datagram related process statistics over a time scale or indeed keeps a history of such statistics.

 

Solution Overview

 

This management solution focuses on detecting ONLY those devices that are designated as network Gateways and are indeed an IP Datagram forwarding devices.

 

The solution defines a module name and description, then initiates the polling process under which the Devices (or in a specified AMZ) are fed into the polling SNMP engine, where the Gateway status of the device is determined through polling the value of the ipForwarding MIB Object. A variable handler is then defined to store the value which is then tested with an IF conditional statement; if the status for the particular device is ‘Forwarding’ then the counters for the IP Datagrams total inbound received, total inbound delivered to the IP process, forwarded, and inbound discarded are all collected along with the total IP Datagrams outbound requests and outbound discarded. Collected statistics are then used to calculate higher level metrics to assess the health of router’s IP Datagram processes. Such higher metrics are:

 

 

 

 

 

 

 

SOSL Based Management Process Script Configuration

 


 

MODULE IpStats1 ();

DESCRIPTION "Device IP Group Statistics Process";

BEGIN

            ALL-DEV BY DEV                  

            {

                        DEFINE ipForwarding DB INT;

 

                        ipForwarding = POLL (ipForwarding);

 

                        IF (ipForwarding  == 1)

                        THEN    

                                    POLL (   ipInReceives ;

                                                ipInDelivers;

                                                ipForwDatagrams ;

                                                ipInDiscards;

                                                ipOutRequests  ;

                                                ipOutDiscards );                        

            };

END

 


 

MODULE IpStats2 ();

DESCRIPTION "Device IP Group Statistics Process";

BEGIN

            ALL-DEV BY DEV                  

            {

                        DEFINE ipForwarding DB INT;

 

                        ipForwarding = POLL (ipForwarding);

 

                        IF (ipForwarding  == 1)

                        THEN    

                                    DEFINE  ipInReceivesT1 MAP INT;

                                    DEFINE  ipInDeliversT1 MAP INT;

                                    DEFINE  ipForwDatagramsT1 MAP INT;

                                    DEFINE  ipInDiscardsT1 MAP INT;

                                    DEFINE  ipOutRequestsT1 MAP INT;

                                    DEFINE  ipOutDiscardsT1 MAP INT;

 

                                    DEFINE  ipInReceivesT1 DB INT;

                                    DEFINE  ipInDeliversT1 DB INT;

                                    DEFINE  ipForwDatagramsT1 DB INT;

                                    DEFINE  ipInDiscardsT1 DB INT;

                                    DEFINE  ipOutRequestsT1 DB INT;

                                    DEFINE  ipOutDiscardsT1 DB INT;

 

                                    ipInReceivesT1 = ipInReceives;

                                    ipInDeliversT1 = ipInDelivers;

                                    ipForwDatagramsT1 = ipForwDatagrams;

                                    ipInDiscardsT1 = ipInDiscards;

                                    ipOutRequestsT1 = ipOutRequests;

                                    ipOutDiscardsT1 = ipOutDiscards;

 

                                    RMV (    ipInReceives ;

                                                ipInDelivers;

                                                ipForwDatagrams ;

                                                ipInDiscards;

                                                ipOutRequests  ;

                                                ipOutDiscards );                        

 

                                    POLL (   ipInReceives;

                                                ipInDelivers;

                                                ipForwDatagrams;

                                                ipInDiscards;

                                                ipOutRequests;

                                                ipOutDiscards );                        

 

                                    DEFINE  ipInReceivesT2 MAP INT;

                                    DEFINE  ipInDeliversT2 MAP INT;

                                    DEFINE  ipForwDatagramsT2 MAP INT;

                                    DEFINE  ipInDiscardsT2 MAP INT;

                                    DEFINE  ipOutRequestsT2 MAP INT;

                                    DEFINE  ipOutDiscardsT2 MAP INT;

 

                                    ipInReceivesT2 = ipInReceives;

                                    ipInDeliversT2 = ipInDelivers;

                                    ipForwDatagramsT2 = ipForwDatagrams;

                                    ipInDiscardsT2 = ipInDiscards;

                                    ipOutRequestsT2 = ipOutRequests;

                                    ipOutDiscardsT2 = ipOutDiscards;

 

                                    CounterData (ipInReceives, ipInReceivesT1, ipInReceivesT2);

                                    CounterData (ipInDelivers, ipInDeliversT1, ipInDeliversT2);

                                    CounterData (ipForwDatagrams, ipForwDatagramsT1, ipForwDatagramsT2);

                                    CounterData (ipInDiscards, ipInDiscardsT1, ipInDiscardsT2);

                                    CounterData (ipOutRequests, ipOutRequestsT1, ipOutRequestsT2);

                                    CounterData (ipOutDiscards, ipOutRequestsT1, ipOutRequestsT2);

 

                                    #############################################################

                                    #PERCENTAGE OF IP DATAGRAM DELIVERED TO THE IP PROCESS  TO THE TOTAL INBOUND

                                    #DATAGRAMS RECEIVED

 

                                    DEFINE InDeliveredDatagrmsVar             MAP INT;

                                    DEFINE InDeliveredDatagrms      DB INT;

 

                                    InDeliveredDatagrmsVar = ipInDelivers * 100 / ipInReceives;

                                    InDeliveredDatagrms     = InDeliveredDatagrmsVar;

 

                                    #############################################################

                                    #PERCENTAGE OF IP DATAGRAM DISCARDS DUE TO NO BUFFERS

 

                                    DEFINE BufferDiscardsVar           MAP INT;

                                    DEFINE BufferDiscards                DB INT;

 

                                    BufferDiscardsVar = ipInDiscards * 100 / ipInReceives;

                                    BufferDiscards   = BufferDiscardsVar;

 

                                    #############################################################

                                    #PERCENT DATAGRAMS DISTANT TO REMOTE ADDRESSES TO THE TOTAL INBOUND DATAGRAMS #RECEIVED

 

                                    DEFINE ForwrdedToRcvedVar MAP INT;

                                    DEFINE ForwrdedToRcved           DB INT;

 

                                    ForwrdedToRcvedVar = ipForwDatagrams * 100 / ipInReceives;

                                    ForwrdedToRcved           = ForwrdedToRcvedVar;

 

                                    #############################################################

                                    #PERCENT datagram OUTBOUND DISCARDS TO total datagram REQUESTS

                                    DEFINE OutDiscardsToRequestsVar MAP INT;

                                    DEFINE OutDiscardsToRequests   DB INT;

 

                                    OutDiscardsToRequestsVar = ipOutDiscards * 100 / ipOutRequests;

 

                                    OutDiscardsToRequests  = OutDiscardsToRequestsVar;

 

                                    #############################################################

                                    #NUMBER OF ROUTING PROCESS INVOCATIONS

                                    DEFINE RouteProcInvocationsVar MAP INT;

                                    DEFINE RouteProcInvocations DB INT;

 

                                    RouteProcInvocationsVar = ipForwDatagrams + ipOutRequests;

                                    RouteProcInvocations     = RouteProcInvocationsVar;

 

                        ENDIF;

            };

END

 


[SOSL Case Studies], [Management Concepts], [NMS Technology R&D]

[Home], [About], [Solutions Center], [NMS Market], [Products & Services],
[Management Technology], [Technical Support], [Contact us], [Site Map]