亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? aggcbqegress-est.cc.cc

?? 在網絡的邊緣路由器中并不能完全接受所到的包
?? CC
?? 第 1 頁 / 共 2 頁
字號:

#include "aggcbqegress-est.h"

double AggCbqEgress_Est::arrivalenvelope0[17][2];
double AggCbqEgress_Est::serviceenvelope0[17][2];
double AggCbqEgress_Est::arrivalenvelope1[17][2];
double AggCbqEgress_Est::serviceenvelope1[17][2];

//creating a circular list for storing the maxarrivaltime and minservicetime for every second
//for the last 10seconds

struct maxmintimelist0
{
  double maxminarrayoftime0[17][2];
  maxmintimelist0* next;
};
typedef struct maxmintimelist0 maxmintimelist0;

maxmintimelist0 *headoflist0,*tailoflist0,*navigatelist0,*nodeoflist0;

struct maxmintimelist1
{
  double maxminarrayoftime1[17][2];
  maxmintimelist1* next;
};
typedef struct maxmintimelist1 maxmintimelist1;

maxmintimelist1 *headoflist1,*tailoflist1,*navigatelist1,*nodeoflist1;

static class AggCbqEgress_EstClass : public TclClass {
public:
	AggCbqEgress_EstClass() : TclClass("Est/AggCbqEgress") {}
	TclObject* create(int, const char*const*) {
		return (new AggCbqEgress_Est());
	}
} class_aecbq_est;

AggCbqEgress_Est::AggCbqEgress_Est() {

	/* assume period_, T_ and M_ get set in Tcl */
        bind("lifetimeofflow_", &lifetimeofflow_);
        bind("simulationtime_", &simulationtime_);
        bind("T_", &T_);
	bind("M_", &M_);
}

void AggCbqEgress_Est::createmaxmintimelist0(double a[][2])
{
    nodeoflist0 = (maxmintimelist0*)malloc(sizeof(maxmintimelist0));
    for(int i = 0;i < 17;i++)
    {
       nodeoflist0->maxminarrayoftime0[i][0] = a[i][0];
       nodeoflist0->maxminarrayoftime0[i][1] = a[i][1];
    }
    nodeoflist0->next = NULL;
    
    headoflist0 = headoflist0->next;
    free(tailoflist0->next);
    tailoflist0->next = nodeoflist0;
    tailoflist0 = tailoflist0->next;
    tailoflist0->next = headoflist0;
}

void AggCbqEgress_Est::createmaxmintimelist1(double a[][2])
{
    nodeoflist1 = (maxmintimelist1*)malloc(sizeof(maxmintimelist1));
    for(int i = 0;i < 17;i++)
    {
       nodeoflist1->maxminarrayoftime1[i][0] = a[i][0];
       nodeoflist1->maxminarrayoftime1[i][1] = a[i][1];
    }
    nodeoflist1->next = NULL;
        
    headoflist1 = headoflist1->next;
    free(tailoflist1->next);
    tailoflist1->next = nodeoflist1;
    tailoflist1 = tailoflist1->next;
    tailoflist1->next = headoflist1;
}

void AggCbqEgress_Est::initializemaxminlist0(void)
{
  int p;
  int q;
  headoflist0 = NULL;
  tailoflist0 = NULL;
  navigatelist0 = NULL;
  nodeoflist0 = NULL;
  for(p = 0;p < 10;p++)
  {
      nodeoflist0 = (maxmintimelist0*)malloc(sizeof(maxmintimelist0));
      for(q = 0;q < 17;q++)
      {
         nodeoflist0->maxminarrayoftime0[q][0] = 0.0;
         nodeoflist0->maxminarrayoftime0[q][1] = 0.0;
      }   
      nodeoflist0->next = NULL;
        
      if(headoflist0==NULL)
      {
         headoflist0 = nodeoflist0;
         tailoflist0 = nodeoflist0;
         navigatelist0 = nodeoflist0;
      }
      else
      {
         navigatelist0->next = nodeoflist0;
         navigatelist0 = navigatelist0->next;
         tailoflist0 = navigatelist0;
      }
  }
  tailoflist0->next = headoflist0;
}       

void AggCbqEgress_Est::initializemaxminlist1(void)
{
  int p;
  int q;
  headoflist1 = NULL;
  tailoflist1 = NULL;
  navigatelist1 = NULL;
  nodeoflist1 = NULL;
  for(p = 0;p < 10;p++)
  {
      nodeoflist1 = (maxmintimelist1*)malloc(sizeof(maxmintimelist1));
      for(q = 0;q < 17;q++)
      {
         nodeoflist1->maxminarrayoftime1[q][0] = 0.0;
         nodeoflist1->maxminarrayoftime1[q][1] = 0.0;
      }
      nodeoflist1->next = NULL;   
 
      if(headoflist1 == NULL)
      {
         headoflist1 = nodeoflist1;
         tailoflist1 = nodeoflist1;
         navigatelist1 = nodeoflist1;
      }  
      else
      {
         navigatelist1->next = nodeoflist1;
         navigatelist1 = navigatelist1->next;
         tailoflist1 = navigatelist1;
      }
  }
  tailoflist1->next = headoflist1;
}



void AggCbqEgress_Est::printmaxmintimelist0(void)
{
   navigatelist0 = headoflist0;
   int j = 0;
   int i;
   while (navigatelist0->next != headoflist0)
   {
      printf("The list for table %d is ------------------- \n",j);
      for(i = 0; i < 17; i++)
      {
        printf(" Row %d --------- arrivaltime %f         servicetime
%f\n",i,navigatelist0->maxminarrayoftime0[i][0],navigatelist0->maxminarrayoftime0[i][1]); 
      }
      navigatelist0 = navigatelist0->next;
      j++;
   }
   
   if(navigatelist0->next == headoflist0)
   {
      printf("The list for table %d is ------------------- \n",j);
      for(i = 0; i < 17; i++)
      {
        printf(" Row %d --------- arrivaltime %f         servicetime
%f\n",i,navigatelist0->maxminarrayoftime0[i][0],navigatelist0->maxminarrayoftime0[i][1]);
       }
    }
}

void AggCbqEgress_Est::printmaxmintimelist1(void)
{         
   navigatelist1 = headoflist1;
   int j = 0;
   int i;
   while (navigatelist1->next != headoflist1)
   {   
      printf("The list for table %d is ------------------- \n",j);  
      for(i = 0; i < 17; i++)
      { 
        printf(" Row %d --------- arrivaltime %f         servicetime
%f\n",i,navigatelist1->maxminarrayoftime1[i][0],navigatelist1->maxminarrayoftime1[i][1]);
      }
      navigatelist1 = navigatelist1->next;
      j++;
   }
          
   if(navigatelist1->next == headoflist1)
   {     
      printf("The list for table %d is ------------------- \n",j);
      for(i = 0; i < 17; i++)
      {
        printf(" Row %d --------- arrivaltime %f         servicetime
%f\n",i,navigatelist1->maxminarrayoftime1[i][0],navigatelist1->maxminarrayoftime1[i][1]);
       }
    }
}

void AggCbqEgress_Est::extractarrivalservicetimesintoarray()
{
     temp = Trace::measure;

     // extracting the arrival and service times for the packets into an array for computing  

     int count = Trace::snoopqueuecount;

     printf("\n The number of packets which arrived in the 1sec interval are %d \n",count);
 
     int i;
     int ii;
     int ii1 = 0;
     int ii2 = 0;

     for(i=0;i <= count;i++)
     {
 
       if(temp[i].getclassofpacket() == 0)
       {
          arrayoftimes0[ii1][0] = temp[i].getarrivaltime();
          arrayoftimes0[ii1++][1] = temp[i].getservicetime();
       }
       else 
       {
         if(temp[i].getclassofpacket() == 1)
         {
           arrayoftimes1[ii2][0] = temp[i].getarrivaltime();
           arrayoftimes1[ii2++][1] = temp[i].getservicetime();
         } 
       }
     }

     for(ii = ii1;ii < NUMOFPACKS;ii++)
     {
       arrayoftimes0[ii][0] = 0.0;
       arrayoftimes0[ii][1] = 0.0;
       
     }

     for(ii = ii2;ii < NUMOFPACKS;ii++)
     {
       arrayoftimes1[ii][0] = 0.0;
       arrayoftimes1[ii][1] = 0.0;
     }
 
     //for(i = 0;i <= ii1;i++)
     //{
     //  printf(" row %d ------ arrivaltime = %f    servicetime = %f\n",i,arrayoftimes0[i][0],arrayoftimes0[i][1]);
     //}

     //for(i = 0;i <= ii2;i++)
     //{ 
     //  printf(" row %d ------ arrivaltime = %f    servicetime = %f\n",i,arrayoftimes1[i][0],arrayoftimes1[i][1]);
     //} 

     // end of extracting
}

void AggCbqEgress_Est::computationofminarrivalmaxservicetimes0()
{ 
   int i;
   int p;
   int j;
   int k;
   int flag;
   double minarrivaltime;
   double maxservicetime;

   //--------- computation of minimum arrival time ------------
 
   p = 0;
   j = 0; 
   while(p < 17)
   {
      // The variable j keeps track of how many packets to consider....i.e 1k,2k,4k....
      j = (int)pow(2,p);
      minarrivaltime = 9999;
      for(i = 0; i < NUMOFPACKS-j; i++)
      {
         if(arrayoftimes0[i+j][0] == 0.0)
         {
             break;
         }
         temparrivaltime = arrayoftimes0[i+j][0] - arrayoftimes0[i][0];
         if(minarrivaltime > temparrivaltime)
         {
            minarrivaltime = temparrivaltime;
         }
      }
      maxmintimes0[p][0] = minarrivaltime;
      p++;
    }

    // ---------- end of computation of minimum arrival time -------

    //----------- computation of maximum service time -------------

    p = 0;
    j = 0;
    
    while(p < 17)
    {
       //printf("\n in side the while loop the value of p is %d \n",p);

       j = (int)pow(2,p) - 1;
       maxservicetime = 0.0;

       // this for loop is to extract the max servicetime for packets
       // of size 2 to the power p

       for(i = 0; i < NUMOFPACKS - j; i++)
       {
          if(arrayoftimes0[i+j][1] == 0)
          {
             break;
          }
          k = j;
          flag = 0;

          tempservicetime = arrayoftimes0[i+k][1] - arrayoftimes0[i][0];

          //this tempservicetime should be considered only if there is
          //backlog in the network for (pow(2,p) - 1) packets

          while(k != 0)
          {
             if(arrayoftimes0[i+k][0] < arrayoftimes0[i+k-1][1])
             {
                flag = 1;
             }
             else
             {
                flag = 0;
                break; 
             }
             k--;
          }//end of the while for k

          if(j == 0)
          {   
            flag = 1;
          }   
          if(flag == 1)  
          {
             if(maxservicetime < tempservicetime)
             {   
                maxservicetime = tempservicetime;
             }
          }
       }//end of the for loop for i
           
       maxmintimes0[p][1] = maxservicetime;
       p++;
   }//end of the while for p

  //------------ end of computation --------------------

}

void AggCbqEgress_Est::computationofminarrivalmaxservicetimes1()
{ 
   int i;
   int p;
   int j;
   int k;
   int flag;
   double minarrivaltime;
   double maxservicetime;

   //--------- computation of minimum arrival time ------------
 
   p = 0;
   j = 0; 
   while(p < 17)
   {
      // The variable j keeps track of how many packets to consider....i.e 1k,2k,4k....
      j = (int)pow(2,p);
      minarrivaltime = 9999;
      for(i = 0; i < NUMOFPACKS-j; i++)
      {
         if(arrayoftimes1[i+j][0] == 0.0)
         {
             break;
         }
         temparrivaltime = arrayoftimes1[i+j][0] - arrayoftimes1[i][0];
         if(minarrivaltime > temparrivaltime)
         {
            minarrivaltime = temparrivaltime;
         }
      }
      maxmintimes1[p][0] = minarrivaltime;
      p++;
    }

    // ---------- end of computation of minimum arrival time -------

    //----------- computation of maximum service time -------------

    p = 0;
    j = 0;
    
    while(p < 17)
    {
       //printf("\n in side the while loop the value of p is %d \n",p);

       j = (int)pow(2,p) - 1;
       maxservicetime = 0.0;

       // this for loop is to extract the max servicetime for packets
       // of size 2 to the power p

       for(i = 0; i < NUMOFPACKS - j; i++)
       {
          if(arrayoftimes1[i+j][1] == 0)
          {
             break;
          }
          k = j;
          flag = 0;

          tempservicetime = arrayoftimes1[i+k][1] - arrayoftimes1[i][0];

          //this tempservicetime should be considered only if there is
          //backlog in the network for (pow(2,p) - 1) packets

          while(k != 0)
          {
             if(arrayoftimes1[i+k][0] < arrayoftimes1[i+k-1][1])
             {
                flag = 1;
             }
             else
             {
                flag = 0;
                break; 
             }
             k--;
          }//end of the while for k

          if(j == 0)
          {   
            flag = 1;
          }   
          if(flag == 1)  
          {
             if(maxservicetime < tempservicetime)
             {   
                maxservicetime = tempservicetime;
             }
          }
       }//end of the for loop for i
           
       maxmintimes1[p][1] = maxservicetime;
       p++;
   }//end of the while for p

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
97se亚洲国产综合自在线不卡| 欧美一区二区三区四区五区| 91精品国产综合久久福利软件| 成人欧美一区二区三区白人 | 亚洲精品久久久蜜桃| 韩国一区二区三区| 日韩精品在线看片z| 视频一区二区三区入口| 欧美视频在线不卡| 亚洲国产精品自拍| 欧美色综合影院| 人人爽香蕉精品| 精品国产一区二区亚洲人成毛片 | 国产aⅴ精品一区二区三区色成熟| 日韩精品一区在线| 国产成人综合网| 亚洲国产成人在线| 95精品视频在线| 日韩中文字幕1| 日韩女优视频免费观看| 成人黄色在线视频| 亚洲国产精品久久艾草纯爱 | 91蝌蚪porny九色| 亚洲国产cao| 久久伊99综合婷婷久久伊| 国产精品1024久久| 亚洲一区二区三区四区在线 | 精品人在线二区三区| 国产999精品久久久久久绿帽| 亚洲精品ww久久久久久p站| 欧美一区二区福利在线| 国产69精品久久久久777| 亚洲成人高清在线| 国产精品无遮挡| 日韩视频中午一区| 在线观看亚洲成人| 高清不卡一区二区在线| 五月激情丁香一区二区三区| 国产婷婷精品av在线| 91精品啪在线观看国产60岁| 97久久精品人人爽人人爽蜜臀| 美日韩一级片在线观看| 一区二区三区在线视频免费观看| 欧美videos中文字幕| 欧美精品三级日韩久久| 色猫猫国产区一区二在线视频| 国产一区二区三区四 | 国产精品美女一区二区三区| 欧美精品1区2区| 69p69国产精品| 欧美日韩视频不卡| 欧美肥妇毛茸茸| 欧美猛男gaygay网站| 欧美无人高清视频在线观看| 91麻豆swag| 精品理论电影在线观看| 91精品久久久久久蜜臀| 欧美一a一片一级一片| 香蕉av福利精品导航| 中文天堂在线一区| 亚洲日本va午夜在线影院| 国产三级一区二区| 欧洲精品视频在线观看| 色妞www精品视频| 91久久精品一区二区| 在线精品视频免费播放| 欧美色区777第一页| 欧美精品少妇一区二区三区| 日韩一区和二区| 久久久不卡网国产精品一区| 久久这里只有精品6| 精品日韩在线观看| 中文在线一区二区| 日韩国产欧美三级| 国产69精品久久久久777| 在线精品视频免费播放| 日韩午夜激情视频| 亚洲精品你懂的| 久久不见久久见免费视频1| 成人手机在线视频| 91精品国产91久久综合桃花| 国产精品丝袜91| 日韩va欧美va亚洲va久久| 国产米奇在线777精品观看| 欧美日韩一区二区三区四区五区| 久久久欧美精品sm网站| 日韩精品欧美精品| 色婷婷综合久久久久中文 | 亚洲国产精品久久人人爱蜜臀 | 99精品视频在线免费观看| 欧美另类变人与禽xxxxx| 国产精品国产自产拍在线| 免费的成人av| 欧美一区二区三区四区久久| 亚洲视频一区在线| 99re这里只有精品6| 国产精品美女久久福利网站 | 亚洲国产裸拍裸体视频在线观看乱了| 国产一区二区三区免费播放 | 欧美r级电影在线观看| 亚洲h精品动漫在线观看| 在线观看亚洲精品视频| 亚洲激情av在线| 欧美三级视频在线| 日本一不卡视频| 7777精品伊人久久久大香线蕉完整版 | 在线日韩一区二区| 亚洲综合在线电影| 91国偷自产一区二区三区成为亚洲经典 | 国产成人免费视频网站高清观看视频| 欧美一区二区三区视频在线观看| 性做久久久久久免费观看欧美| 欧美性videosxxxxx| 亚洲在线中文字幕| 精品国产一区二区三区四区四| 波多野结衣在线一区| 久久久不卡影院| 亚洲成人动漫av| 成人在线综合网站| 91精品国产综合久久香蕉的特点 | 欧美一三区三区四区免费在线看| 亚洲国产cao| 欧美大片在线观看| 91在线国产福利| 日产精品久久久久久久性色| 欧美精品一区男女天堂| 不卡视频一二三四| 天堂一区二区在线| 国产亚洲午夜高清国产拍精品 | 91视频xxxx| 午夜精品久久久久久久久久| 精品日韩99亚洲| 欧美午夜精品久久久| 国产98色在线|日韩| 蜜臀精品一区二区三区在线观看 | 国产三级精品在线| 正在播放一区二区| 色综合视频一区二区三区高清| 日本欧美肥老太交大片| 一区二区在线观看视频在线观看| 欧美白人最猛性xxxxx69交| 色婷婷综合久久久久中文一区二区 | 亚洲综合激情网| 国产精品麻豆网站| 国产精品久久久一本精品| 久久精品视频免费观看| 制服视频三区第一页精品| 在线看一区二区| 色香色香欲天天天影视综合网| 99精品视频一区二区| 成人激情文学综合网| 久久99久久99小草精品免视看| 日韩成人伦理电影在线观看| 一区二区日韩av| 亚洲超碰97人人做人人爱| 亚洲综合激情小说| 日本女优在线视频一区二区| 麻豆精品国产传媒mv男同| 青青国产91久久久久久| 国内精品伊人久久久久av一坑 | 石原莉奈在线亚洲二区| 欧美国产日本韩| 18成人在线观看| 五月天亚洲精品| 精品一区二区精品| 成人高清视频在线| 欧美人牲a欧美精品| 久久精品欧美一区二区三区麻豆| 国产精品久久久久久妇女6080| 亚洲视频在线一区二区| 蜜桃在线一区二区三区| 成人黄色大片在线观看| 欧美日韩国产另类不卡| 欧美精品一区二区三区视频| 国产精品私人自拍| 亚洲国产色一区| caoporn国产一区二区| 91精品国产美女浴室洗澡无遮挡| 国产色爱av资源综合区| 蜜臀av一区二区三区| 97久久超碰精品国产| 亚洲欧美福利一区二区| 午夜欧美在线一二页| 久久99九九99精品| 国产一区二区三区最好精华液| 91毛片在线观看| 欧美久久高跟鞋激| 日本一区二区三区免费乱视频 | 亚洲v中文字幕| 国产精品久久久久久久久果冻传媒| 丝袜亚洲另类欧美综合| 国产老妇另类xxxxx| 欧美日韩免费一区二区三区视频| 国产日韩欧美a| 国内成人免费视频| 精品日韩欧美在线| 美女尤物国产一区| 精品国产制服丝袜高跟| 美国十次了思思久久精品导航| 在线免费观看视频一区|