SmartMIB Small Solution:

Ethernet Interface Traffic and Error Statistics


(SM-SmallSol006)

Solution’s SOSL Based management process script:

 

 

Please Note:

 

This small solution Based management process script is very much identical to the one from the  ETHERNET Interface Statistics solution. The only exception is the additional errors and discards counters in the management scripts below.

 

 

 

The solution defines the following main modules:

 

MainMIBTables:

This is the main module that controls and instantiates the ‘mibTables’ module.

 

MainFilterTables:

This is the main module that controls and instantiates the ‘FilterTables’ module.

 

MainIfEthernet:

This is the main module that controls and instantiates the ‘ifEthernetINDEXES1’ and the ‘ifEthernetINDEXES2’ modules.

 

MainIfHCEthernet:

This is the main module that controls and instantiates the ‘HCifEthernetINDEXES1’ and the ‘HCifEthernetINDEXES2’ modules.

 

The details of the Main modules and the transient Service modules are provided below:

 


 

MODULE MainMIBTables ();

DESCRIPTION "Interface INVENTORY information";

BEGIN

            POLL-FREQ

            {

                        MODULE-CALL mibTables();

 

                        WAIT (12000);

            };

END

 


 

MODULE MainFilterTables ();

DESCRIPTION "Interface INVENTORY information";

BEGIN

 

            POLL-FREQ

            {

                        MODULE-CALL FilterTables();

 

                        WAIT (12000);

            };

END

 


 

MODULE MainIfEthernet ();

DESCRIPTION "Normal Speed Interfaces Process";

BEGIN

 

            ALL-DEV BY DEV

            {

                        MODULE-CALL EthernetINDEXES1 (DEV);

            };

 

            POLL-FREQ

            {

                        WAIT (3000);

 

                        ALL-DEV BY DEV

                        {

                                    MODULE-CALL EthernetINDEXES2 (DEV);

                        };

            };

END

 


 

MODULE MainIfHCEthernet ();

DESCRIPTION "High Speed Interfaces Process";

BEGIN

 

            ALL-DEV BY DEV

            {

                        MODULE-CALL HCEthernetINDEXES1 (DEV);

            };

 

            POLL-FREQ

            {

                        WAIT (3000);

 

                        ALL-DEV BY DEV

                        {

                                    MODULE-CALL HCEthernetINDEXES2 (DEV);

                        };

 

            };

END

 


 

MODULE mibTables ();

DESCRIPTION "Interface INVENTORY information";

BEGIN              

            ALL-DEV BY DEV

            {

                        SET-INDEX ifTable ( ifDescr [ ifIndex, INT ] );

            };

END

 


 

MODULE FilterTables ();

DESCRIPTION "Interface INVENTORY information";

BEGIN

            ALL-DEV BY DEV

            {

                        WITH-INDEX ifTable

                        {

                                    POLL (   ifDescr;

                                                ifMtu;

                                                ifType;

                                                ifSpeed;

                                                ifAdminStatus;

                                                ifOperStatus      );

 

                                    DEFINE ifAdminStatus                 DB DISPL;        

                                    DEFINE ifType                            DB DISPL;        

                                    DEFINE ifOperStatus                   DB DISPL;

                                    DEFINE ifSpeed                          DB DISPL;        

 

                                    IF         (           ifAdminStatus    == "up" AND

                                                            ifOperStatus      == "up" AND

                                                            ifType               == "^ethernetCsmacd" AND

                                                            ifSpeed             <=  20000000 )

                                    THEN

                                                STORE-INDEX "IfEthernet";

 

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

                                                # “ifEthernet“ index list now contains the list of Ethernet 

                                                # csmacd type interfaces on each of the managed elements

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

 

                                    ELSEIF  (           ifAdminStatus    == "up" AND

                                                            ifOperStatus      == "up" AND

                                                            ifType               == "^ethernetCsmacd" AND

                                                            ifSpeed             >  20000000      )

                                    THEN

                                                STORE-INDEX "IfHCEthernet";

 

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

                                                # “ifHCEthernet“ index list now contains the list of High Speed

                                                # Ethernet csmacd type interfaces on each of the managed

                                                # elements

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

 

                                    ENDIF;

                        };

            };

END

 


 

MODULE  EthernetINDEXES1 (DEV      DEVICE);

DESCRIPTION "";

BEGIN

 

            WITH-INDEX IfEthernet

            {

                        POLL (   ifInOctets;

                                    ifOutOctets;

                                    ifInUcastPkts;

                                    ifInMulticastPkts;

                                    ifOutUcastPkts;

                                    ifInBroadcastPkts;

                                    ifOutMulticastPkts;

                                    ifOutBroadcastPkts;

                                    ifInErrors;

                                    ifInDiscards;

                                    ifOutErrors;

                                    ifOutDiscards;

                                    sysUpTime;

                                    ifCounterDiscontinuityTime          );

            };

END

 


 

MODULE  HCEthernetINDEXES1 (DEV  DEVICE);

DESCRIPTION "";

BEGIN

 

            WITH-INDEX                                    

            {

                        POLL (   ifHCInOctets;

                                    ifHCOutOctets;

                                    ifHCInUcastPkts;

                                    ifHCInMulticastPkts;

                                    ifHCOutUcastPkts;

                                    ifHCInBroadcastPkts;

                                    ifHCOutMulticastPkts;

                                    ifHCOutBroadcastPkts;

                                    ifInErrors;

                                    ifInDiscards;

                                    ifOutErrors;

                                    ifOutDiscards;

                                    sysUpTime;

                                    ifCounterDiscontinuityTime          );

            };

END

 


 

MODULE  EthernetINDEXES2 (DEV      DEVICE);

DESCRIPTION "";

BEGIN

 

            WITH-INDEX IfEthernet

            {

                        DEFINE ifInOctetsT1 INT;

                        DEFINE ifOutOctetsT1 INT;

                        DEFINE ifInUcastPktsT1 INT;

                        DEFINE ifInMulticastPktsT1 INT;

                        DEFINE ifInBroadcastPktsT1 INT;

                        DEFINE ifOutUcastPktsT1 INT;

                        DEFINE ifOutMulticastPktsT1 INT;

                        DEFINE ifOutBroadcastPktsT1 INT;

                        DEFINE ifInErrorsT1 INT;

                        DEFINE ifInDiscardsT1 INT;

                        DEFINE ifOutErrorsT1 INT;

                        DEFINE ifOutDiscardsT1 INT;

                        DEFINE nTime1 INT;

                        DEFINE ifDisconTime1 INT;

 

                        DEFINE ifInOctets DB INT;

                        DEFINE ifOutOctets DB INT;

                        DEFINE ifInUcastPkts DB INT;

                        DEFINE ifInMulticastPkts DB INT;

                        DEFINE ifInBroadcastPkts DB INT;

                        DEFINE ifOutUcastPkts DB INT;

                        DEFINE ifOutMulticastPkts DB INT;

                        DEFINE ifOutBroadcastPkts DB INT;

                        DEFINE ifInErrors DB INT;

                        DEFINE ifInDiscards DB INT;

                        DEFINE ifOutErrors DB INT;

                        DEFINE ifOutDiscards DB INT;

                        DEFINE sysUpTime DB INT;

                        DEFINE ifCounterDiscontinuityTime DB INT;

 

                        ifInOctetsT1 = ifInOctets;

                        ifOutOctetsT1 = ifOutOctets;

                        ifInUcastPktsT1 = ifInUcastPkts;

                        ifInMulticastPktsT1 = ifInMulticastPkts;

                        ifInBroadcastPktsT1 = ifInBroadcastPkts;

                        ifOutUcastPktsT1 = ifOutUcastPkts;

                        ifOutMulticastPktsT1 = ifOutMulticastPkts;

                        ifOutBroadcastPktsT1 = ifOutBroadcastPkts;

                        ifInErrorsT1 = ifInErrors;

                        ifInDiscardsT1 = ifInDiscards;

                        ifOutErrorsT1 = ifOutErrors;

                        ifOutDiscardsT1 = ifOutDiscards;

                        nTime1 = sysUpTime /100;

                        ifDisconTime1 = ifCounterDiscontinuityTime;

 

                        RMV (    ifInOctets;

                                    ifOutOctets;

                                    ifInUcastPkts;

                                    ifInMulticastPkts;

                                    ifOutUcastPkts;

                                    ifInBroadcastPkts;

                                    ifOutMulticastPkts;

                                    ifOutBroadcastPkts;

                                    ifInErrors;

                                    ifInDiscards;

                                    ifOutErrors;

                                    ifOutDiscards;

                                    ifSpeed;

                                    ifCounterDiscontinuityTime);

 

                        POLL (   ifInOctets;

                                    ifOutOctets;

                                    ifInUcastPkts;

                                    ifInMulticastPkts;

                                    ifOutUcastPkts;

                                    ifInBroadcastPkts;

                                    ifOutMulticastPkts;

                                    ifOutBroadcastPkts;

                                    ifInErrors;

                                    ifInDiscards;

                                    ifOutErrors;

                                    ifOutDiscards;

                                    sysUpTime;

                                    ifCounterDiscontinuityTime          );

 

                        DEFINE ifInOctetsT2 INT;

                        DEFINE ifOutOctetsT2 INT;

                        DEFINE ifInUcastPktsT2 INT;

                        DEFINE ifInMulticastPktsT2 INT;

                        DEFINE ifInBroadcastPktsT2 INT;

                        DEFINE ifOutUcastPktsT2 INT;

                        DEFINE ifOutMulticastPktsT2 INT;

                        DEFINE ifOutBroadcastPktsT2 INT;

                        DEFINE ifInErrorsT2 INT;

                        DEFINE ifInDiscardsT2 INT;

                        DEFINE ifOutErrorsT2 INT;

                        DEFINE ifOutDiscardsT2 INT;

 

                        ifInOctetsT2 = ifInOctets;     

                        ifOutOctetsT2 = ifOutOctets;

                        ifInUcastPktsT2 = ifInUcastPkts;

                        ifInMulticastPktsT2 = ifInMulticastPkts;

                        ifInBroadcastPktsT2 = ifInBroadcastPkts;

                        ifOutUcastPktsT2 = ifOutUcastPkts;

                        ifOutMulticastPktsT2 = ifOutMulticastPkts;

                        ifOutBroadcastPktsT2 = ifOutBroadcastPkts;

                        ifInErrorsT2 = ifInErrors;

                        ifInDiscardsT2 = ifInDiscards;

                        ifOutErrorsT2 = ifOutErrors;

                        ifOutDiscardsT2 = ifOutDiscards;

 

                        DEFINE nTime2              INT;

                        DEFINE ifDisconTime2     INT;

 

                        nTime2              = sysUpTime /100;

                        ifDisconTime2    = ifCounterDiscontinuityTime;

 

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

                        #  MSG("ifDisconTime1 = @1,

                        #      ifDisconTime2 = @2", ifDisconTime1, ifDisconTime2);

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

 

                        IF         (ifDisconTime2 == ifDisconTime1)

                        THEN                

           

                            CounterData(     DeltaifInOctets, 

                                                    ifInOctetsT1,     

                                                    ifInOctetsT2);

 

                            CounterData(     DeltaifOutOctets,           

                                                    ifOutOctetsT1,   

                                                    ifOutOctetsT2);

 

                            CounterData(     DeltaifInUcastPkts ,                   

                                                    ifInUcastPktsT1,            

                                                    ifInUcastPktsT2);

 

                            CounterData(     DeltaifInBroadcastPkts,              

                                                    ifInBroadcastPktsT1,      

                                                    ifInBroadcastPktsT2);

 

                            CounterData(     DeltaifInMulticastPkts ,               

                                                    ifInMulticastPktsT1,        

                                                    ifInMulticastPktsT2);

 

                            CounterData(     DeltaifOutUcastPkts,                  

                                                    ifOutUcastPktsT1,                      

                                                    ifOutUcastPktsT2);

 

                            CounterData(     DeltaifOutBroadcastPkts,

                                                    ifOutBroadcastPktsT1,    

                                                    ifOutBroadcastPktsT2);

 

                            CounterData(     DeltaifOutMulticastPkts,

                                                    ifOutMulticastPktsT1,      

                                                    ifOutMulticastPktsT2);

 

                            CounterData(     DeltaifInErrors,             

                                                    ifInErrorsT1,     

                                                    ifInErrorsT2);

 

                            CounterData(     DeltaifInDiscards,                     

                                                    ifInDiscardsT1,  

                                                    ifInDiscardsT2);

 

                            CounterData(     DeltaifOutErrors,                       

                                                    ifOutErrorsT1,   

                                                    ifOutErrorsT2);

 

                            CounterData(     DeltaifOutDiscards,        

                                                    ifOutDiscardsT1,

                                                    ifOutDiscardsT2);

 

                            DEFINE InFrmOVHead     INT;

                            DEFINE OutFrmOVHead   INT;

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

                            #  DEFINE FrmOVHead        INT;

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

                                   

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

                            ## The following formulas calculates the In/Out traffic Overhead  

                            ## values for all traffic passing for the particular interface type

                            ##

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

 

                            InFrmOVHead    = (        DeltaifInUcastPkts

                                                            + DeltaifInBroadcastPkts

                                                            + DeltaifInMulticastPkts) * (96 + 64);

 

                           OutFrmOVHead  = (        DeltaifOutUcastPkts

                                                            + DeltaifOutBroadcastPkts

                                                            + DeltaifOutMulticastPkts) * (96 + 64);

                                   

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

                            ## Calculating the time difference between the first and second run

                            ## polls as reported by each managed element

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

 

                            DEFINE DeltaT   INT;                             

                            DeltaT = nTime2 - nTime1;

 

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

                            #  MSG("ifSpeed = @1, DeltaT = @2", ifSpeed, DeltaT);

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

 

                            DEFINE ifSpeed  DB INT;

 

                            IF (ifSpeed != 0 AND DeltaT > 0)

                            THEN

 

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

                                    ## The following formulas calculates the In/OutUtilization

                                    ## values for all traffic passing for the particular interface type

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

 

                                    DEFINE InTrafficUtilization           DB INT;

                                    DEFINE OutTrafficUtilization         DB INT;

 

                                    InTrafficUtilization = (DeltaifInOctets * 8) * 100 / (DeltaT * ifSpeed);

                                    OutTrafficUtilization = (DeltaifOutOctets * 8) * 100/ (DeltaT * ifSpeed);

 

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

                                    # MSG("InTrafficUtil = @1, OutTrafficUtil = @2",

                                    #             InTrafficUtilization, OutTrafficUtilization);

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

                                               

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

                                    ## The following formulas calculates the In/OutUtilization

                                    ## values while accounting for traffic overheads for the

                                    ## particular interface type

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

 

                                    DEFINE InDataUtilization             DB INT;

                                    DEFINE OutDataUtilization           DB INT;

 

            InDataUtilization = (InFrmOVHead + DeltaifInOctets * 8)*100/ (DeltaT * ifSpeed);

            OutDataUtilization = (OutFrmOVHead + DeltaifOutOctets * 8)*100/ (DeltaT * ifSpeed);

 

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

                                    ## The following formulas calculates the In/Out Throughput

                                    ## values for the particular interface type

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

 

                                                DEFINE InThroughput     DB INT;

                                                DEFINE OutThroughput   DB INT;                        

 

                                                InThroughput     = (DeltaifInOctets * 8) *1000      / DeltaT;

                                                OutThroughput   = (DeltaifOutOctets * 8) *1000    / DeltaT;

 

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

## The total utilization and Throughput could be calculated by enabling the following

## piece of code:

#

#                                  DEFINE TotalPkts                        INT;

#                                  DEFINE TotalInPkts         INT;

#                                  DEFINE TotalOutPkts       INT;

#                                  DEFINE TotalOctets         INT;

#

#                                  FrmOVHead       = TotalPkts * (96 + 64);

#

#                                  TotalInPkts = (     DeltaifInUcastPkts

#                                                          + DeltaifInMulticastPkts

#                                                          + DeltaifInBroadcastPkts            );

#

#                                  TotalOutPkts = (   DeltaifOutUcastPkts

#                                                          + DeltaifOutMulticastPkts

#                                                          + DeltaifOutBroadcastPkts          );

#

#                                  TotalPkts           = TotalInPkts + TotalOutPkts;

#

#                                  TotalOctets        = DeltaifOutOctets + DeltaifInOctets;

#

#                                              DEFINE TotalUtilization    DB INT;

#                                              DEFINE Throughput        DB INT;

#

#          TotalUtilization = ((TotalPkts*(96 + 64)) + TotalOctets*8)*100/(DeltaT * ifSpeed);

#          Throughput      = (TotalOctets * 8) *1000 / DeltaT;

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

 

                                    ENDIF;

                        ENDIF;

            };

END

 


 

MODULE  HCEthernetINDEXES2 (DEV  DEVICE);

DESCRIPTION "";

BEGIN

 

            WITH-INDEX IfHCEthernet

            {

                        DEFINE ifHCInOctetsT1 INT;

                        DEFINE ifHCOutOctetsT1 INT;

                        DEFINE ifHCInUcastPktsT1 INT;

                        DEFINE ifHCOutUcastPktsT1 INT;

                        DEFINE ifHCInMulticastPktsT1 INT;

                        DEFINE ifHCInBroadcastPktsT1 INT;

                        DEFINE ifHCOutMulticastPktsT1 INT;

                        DEFINE ifHCOutBroadcastPktsT1 INT;

                        DEFINE nTime1 INT;

                        DEFINE ifDisconTime1 INT;

 

                        DEFINE ifInOctets DB INT;

                        DEFINE ifOutOctets DB INT;

                        DEFINE ifInUcastPkts DB INT;

                        DEFINE ifOutUcastPkts DB INT;

                        DEFINE ifHCInMulticastPkts DB INT;

                        DEFINE ifHCInBroadcastPkts DB INT;

                        DEFINE ifHCOutMulticastPkts DB INT;

                        DEFINE ifHCOutInBroadcastPkts DB INT;

                        DEFINE sysUpTime DB INT;

                        DEFINE ifCounterDiscontinuityTime DB INT;

 

                        ifHCInOctetsT1 = ifHCInOctets; 

                        ifHCOutOctetsT1 = ifHCOutOctets;

                        ifHCInUcastPktsT1 = ifHCInUcastPkts;

                        ifHCOutUcastPktsT1 = ifHCOutUcastPkts;

                        ifHCInMulticastPktsT1 = ifHCInMulticastPkts;

                        ifHCInBroadcastPktsT1 = ifHCInBroadcastPkts;

                        ifHCOutMulticastPktsT1 = ifHCOutMulticastPkts;

                        ifHCOutBroadcastPktsT1 = ifHCOutBroadcastPkts;

 

                        nTime1 = sysUpTime /100;

                        ifDisconTime1 = ifCounterDiscontinuityTime;

 

                        RMV (    ifHCInOctets;

                                    ifHCOutOctets;

                                    ifHCInUcastPkts;

                                    ifHCInMulticastPkts;

                                    ifHCOutUcastPkts;

                                    ifHCInBroadcastPkts;

                                    ifHCOutMulticastPkts;

                                    ifHCOutBroadcastPkts;

                                    ifSpeed;

                                    sysUpTime;

                                    ifCounterDiscontinuityTime);

 

                        POLL (   ifHCInOctets;

                                    ifHCOutOctets;

                                    ifHCInUcastPkts;

                                    ifHCInMulticastPkts;

                                    ifHCOutUcastPkts;

                                    ifHCInBroadcastPkts;

                                    ifHCOutMulticastPkts;

                                    ifHCOutBroadcastPkts;

                                    ifSpeed;

                                    sysUpTime;

                                    ifPhysAddress;

                                    ifCounterDiscontinuityTime

                                    ifLinkUpDownTrapEnable );

 

                        DEFINE ifHCInOctetsT2 INT;

                        DEFINE ifHCOutOctetsT2 INT;

                        DEFINE ifHCInUcastPktsT2 INT;

                        DEFINE ifHCOutUcastPktsT2 INT;

                        DEFINE ifHCInMulticastPktsT2 INT;

                        DEFINE ifHCInBroadcastPktsT2 INT;

                        DEFINE ifHCOutMulticastPktsT2 INT;

                        DEFINE ifHCOutBroadcastPktsT2 INT;

 

                        ifHCInOctetsT2 = ifHCInOctets; 

                        ifHCOutOctetsT2 = ifHCOutOctets;

                        ifHCInUcastPktsT2 = ifHCInUcastPkts;

                        ifHCOutUcastPktsT2 = ifHCOutUcastPkts;

                        ifHCInMulticastPktsT2 = ifHCInMulticastPkts;

                        ifHCInBroadcastPktsT2 = ifHCInBroadcastPkts;

                        ifHCOutMulticastPktsT2 = ifHCOutMulticastPkts;

                        ifHCOutBroadcastPktsT2 = ifHCOutBroadcastPkts;

 

                        DEFINE nTime2 INT;

                        DEFINE ifDisconTime2 INT;

 

                        nTime2v = sysUpTime /100;

                        ifDisconTime2 = ifCounterDiscontinuityTime;

           

                        IF (ifDisconTime2 == ifDisconTime1)

                        THEN                            

 

                            CounterData64( DeltaifHCInOctets,

                                                    DeltaifHCInOctetsT1,

                                                    DeltaifHCInOctetsT2);

 

                            CounterData64( DeltaifHCOutOctets,

                                                    DeltaifHCOutOctetsT1,

                                                    DeltaifHCOutOctetsT2);

 

                            CounterData64( DeltaifHCInUcastPkts,    

                                                    DeltaifHCInUcastPktsT1,

                                                    DeltaifHCInUcastPktsT2);

 

                            CounterData64( DeltaifHCOutUcastPkts,  

                                                    DeltaifHCOutUcastPktsT1,

                                                    DeltaifHCOutUcastPktsT2);

 

                            CounterData64( DeltaifHCInMulticastPkts,           

                                                    DeltaifHCInMulticastPktsT1,

                                                    DeltaifHCInMulticastPktsT2);

 

                            CounterData64( DeltaifHCInBroadcastPkts,         

                                                    DeltaifHCInBroadcastPktsT1,

                                                    DeltaifHCInBroadcastPktsT2);

 

                            CounterData64( DeltaifHCOutMulticastPkts,

                                                    DeltaifHCOutMulticastPktsT1,

                                                    DeltaifHCOutMulticastPktsT2);

 

                            CounterData64( DeltaifHCOutBroadcastPkts,

                                                    DeltaifHCOutBroadcastPktsT1,

                                                    DeltaifHCOutBroadcastPktsT2);

 

                            CounterData(     DeltaifInErrors,             

                                                    ifInErrorsT1,     

                                                    ifInErrorsT2);

 

                            CounterData(     DeltaifInDiscards,                     

                                                    ifInDiscardsT1,  

                                                    ifInDiscardsT2);

    

                            CounterData(     DeltaifOutErrors,                       

                                                    ifOutErrorsT1,   

                                                    ifOutErrorsT2);

 

                            CounterData(     DeltaifOutDiscards,        

                                                    ifOutDiscardsT1,

                                                    ifOutDiscardsT2);

 

                            DEFINE TotalPkts INT;

                            DEFINE TotalOctets INT;

                            DEFINE InFrmOVHead INT;

                            DEFINE OutFrmOVHead INT;

                            DEFINE FrmOVHead INT;

 

                            TotalPkts = (        DeltaifHCInUcastPkts

                                                            + DeltaifHCInMulticastPkts

                                                            + DeltaifHCInBroadcastPkts

                                                            + DeltaifHCOutUcastPkts

                                                            + DeltaifHCOutMulticastPkts

                                                            + DeltaifHCOutBroadcastPkts      );

 

                             TotalOctets  = DeltaifHCOutOctets + DeltaifHCInOctets;

                                   

                             InFrmOVHead  = (          DeltaifHCInUcastPkts

                                                                        + DeltaifHCInMulticastPkts

                                                                        + DeltaifHCInBroadcastPkts) * (96 + 64);

 

                             OutFrmOVHead = (         DeltaifHCOutUcastPkts

                                                                        + DeltaifHCOutMulticastPkts

                                                                        + DeltaifHCOutBroadcastPkts) * (96 + 64);

                       

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

                             ## Calculating the time difference between the first and second run

                             ## polls as reported by each managed element

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

 

                              DEFINE DeltaT   INT;     

                              DeltaT = nTime2 - nTime1;

 

                              DEFINE ifSpeed DB INT;

 

                              IF (ifSpeed != 0 AND DeltaT > 0)

                              THEN

 

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

                                    ## The following formulas calculates the In/OutUtilization

                                    ## values for all traffic passing for the particular interface type

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

 

                                    DEFINE InTrafficUtilization DB INT;

                                    DEFINE OutTrafficUtilization DB INT;

 

      InTrafficUtilization = (DeltaifHCInOctets * 8) * 100 / (DeltaT * ifSpeed);

      OutTrafficUtilization = (DeltaifHCOutOctets * 8) * 100/ (DeltaT * ifSpeed);

                                               

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

                                    ## The following formulas calculates the In/OutUtilization

                                    ## values while accounting for traffic overheads for the

                                    ## particular interface type

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

 

                                    DEFINE InDataUtilization DB INT;

                                    DEFINE OutDataUtilization DB INT;

 

       InDataUtilization = (InFrmOVHead + DeltaifHCInOctets * 8)*100/ (DeltaT * ifSpeed);

       OutDataUtilization = (OutFrmOVHead + DeltaifHCOutOctets * 8)*100/ (DeltaT * ifSpeed);

 

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

                                    ## The following formulas calculates the In/Out Throughput

                                    ## values for the particular interface type

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

 

                                                DEFINE InThroughput     DB INT;

                                                DEFINE OutThroughput   DB INT;

 

                                                InThroughput     = (DeltaifHCInOctets * 8)*1000 / DeltaT;

                                                OutThroughput   = (DeltaifHCOutOctets * 8)*1000 / DeltaT;

 

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

## The total utilization and Throughput could be calculated by enabling the following

#piece of code:

#                                  DEFINE TotalPkts            INT;

#                                  DEFINE TotalInPkts         INT;

#                                  DEFINE TotalOutPkts       INT;

#                                  DEFINE TotalOctets         INT;

#

#                                  FrmOVHead       = TotalPkts * (96 + 64);

#

#                                  TotalInPkts = (     DeltaifHCInUcastPkts

#                                                          + DeltaifHCInMulticastPkts

#                                                          + DeltaifHCInBroadcastPkts        );

#

#                                  TotalOutPkts = (   DeltaifHCOutUcastPkts

#                                                          + DeltaifHCOutMulticastPkts

#                                                          + DeltaifHCOutBroadcastPkts      );

#

#                                  TotalPkts           = TotalInPkts + TotalOutPkts;

#

#                                  TotalOctets        = DeltaifHCOutOctets + DeltaifHCInOctets;

#

#                                              DEFINE TotalUtilization    DB INT;

#                                              DEFINE Throughput        DB INT;

#

#             TotalUtilization = ((TotalPkts*(96 + 64)) + TotalOctets*8)*100/(DeltaT * ifSpeed);

#             Throughput      = (TotalOctets * 8) *1000 / DeltaT;

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

 

                                    ENDIF;

                        ENDIF;

            };

END

 


Ethernet Interface Traffic and Error Statistics Index Page

Previous Page Page 4/6 Next Page


[Small Solutions], [Professional Solutions], [Security Solutions], [Development Solutions]

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