private void processCountDroppedPkts()
    {
        /*********************************
        System.out.println(super.get_name() +
                ": COUNT_DROPPED_PKTS event arrived. Clock: " +
                GridSim.clock() + "Next event will be in (delay) " +
                (GridSimTags.SCHEDULE_NOW + 3600));
        ********************/
        
        double clock = GridSim.clock();
        String link;
        int bufferSize;
        double maxBufferSize;
        if (clock > nextInterval_dropped)
        {
            FnbSCFQScheduler sched = null;
            double droppedPktsCounter;
            for (Enumeration e = schedTable.keys(); e.hasMoreElements(); )
            {
                link = (String) e.nextElement();
                sched = (FnbSCFQScheduler) schedTable.get(link);

                if (storeStats)
                {
                    // keep stats from all the routers
                    droppedPktsCounter = sched.getCounterDroppedPkts();

                    fw_write(GridSim.clock() + ", " + droppedPktsCounter + "\n",
                             sched.getSchedName() + "_DroppedPkts.csv");

                    sched.resetCounterDroppedPkts();

                    bufferSize = sched.size();
                    maxBufferSize = sched.getMaxBufferSize();

                    if (bufferSize > maxBufferSize)
                    {
                        sched.setMaxBufferSize(bufferSize);
                        maxBufferSize = bufferSize;
                    }
                }

            }

            nextInterval_dropped = GridSim.clock() + INTERVAL;

        } // if (clock > nextInterval_dropped)

    }