00001 00002 /* 00003 * Bursty.h 00004 * 00005 * This program is free software; you can redistribute it and/or 00006 * modify it under the terms of the GNU General Public License, 00007 * version 2, as published by the Free Software Foundation. 00008 * 00009 * This program is distributed in the hope that it will be useful, 00010 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00012 * GNU General Public License for more details. 00013 * 00014 * You should have received a copy of the GNU General Public License along 00015 * with this program; if not, write to the Free Software Foundation, Inc., 00016 * 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. 00017 * 00018 * Author: Lavina Jain 00019 * 00020 */ 00021 00026 00027 #ifndef _BurstyTraffic_ 00028 #define _BurstyTraffic_ 00029 00030 #include "TG.h" 00031 #include "../../core/ranvar.h" 00032 00038 struct BurstyTraffic : public TrafficGenerator { 00039 00041 SC_CTOR(BurstyTraffic); 00042 00043 // PROCESSES ///////////////////////////////////////////////////////// 00044 void init(); 00045 double next_interval(); 00046 // PROCESSES END ///////////////////////////////////////////////////// 00047 00048 // VARIABLES ///////////////////////////////////////////////////// 00049 int pkt_size; 00050 int load; 00051 int avg_burstlen; 00052 int avg_offtime; 00053 int pkt_interval; 00054 int rem; 00055 00056 ExponentialRandomVariable var_burstlen; 00057 ExponentialRandomVariable var_offtime; 00058 00059 string dst_type; 00060 // VARIABLES END ///////////////////////////////////////////////////// 00061 }; 00062 00063 #endif