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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? wfq.cc

?? c++編寫的ns環(huán)境下關(guān)于wfq算法的仿真源代碼
?? CC
字號:
/* * Copyright (c) 1999-2000 Paolo Losi (p.losi@hypersonic.it) * * Copyright (c) 2001-2005 Paolo Losi (p.losi@hypersonic.it) *                         Alexander Sayenko (sayenko@cc.jyu.fi) * * All rights reserved * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version 2 * of the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the * GNU General Public License for more details. */#include <wfq.h>WFQ::WFQ() : GPS_hand(this),             GPS_event(0),             idle(1),             virt_time(0),             last_vt_update(0),             sum(0),             wfq_classifier(NULL) {	bind_bw("bandwidth_",&bandwidth);}/* * Interface to otcl: implements "install" command  * to install the classifier  */int WFQ::command(int argc,const char*const* argv) {  if (argc==3) {   if(strcmp(argv[1],"install")==0) {     wfq_classifier = (WFQAggregClassifier *)TclObject::lookup(argv[2]);     return TCL_OK;   } } return(Queue::command(argc,argv));}void WFQ::updateSum (){  sum = 0;  std::map<unsigned int, WFQClass*>::iterator i =     wfq_classifier->mWFQClasses.begin ();  while (i != wfq_classifier->mWFQClasses.end()) {    if (i->second->B)      sum += i->second->mWeight;    i++;      }  return;}			void WFQ::enque(Packet *p) {  /*   * Check that the classifier has been installed.   * Otherwise, just drop a packet   */  if (!wfq_classifier) {    drop (p);    return;  }  /*   * Ask the classifier to detemine the class a packet belongs to   */  WFQClass* wfq_class = wfq_classifier->get_queue(p);   /*   * If a class cannot be determined, then just drop a packet   */  if (!wfq_class) {    drop (p);    return;  }  /*   * Queue length management:   * note that B is not suited for this porpouse since    * it contains the n. of packet in the GPS reference system.   */  if (wfq_class->mMaxLength < wfq_class->mPackets+1 ) {    drop(p);    return;  }  wfq_class->mPackets++;  /*   * End of queue length management   */  hdr_cmn *hdr = hdr_cmn::access(p);  int size = hdr->size();  double now =  Scheduler::instance().clock();  /*   * Virtual time update   * formula 10 in "virtual time implementation" paragraph   */  if(idle) {    last_vt_update=now;    virt_time=0;    idle=0;  } else {    virt_time=virt_time+(now-last_vt_update)/sum;    last_vt_update=now;  }	  /*   * Let's compute finish time   * implements formula 11    */  wfq_class->mFinishTime =    (wfq_class->mFinishTime > virt_time ? wfq_class->mFinishTime : virt_time)   + size / wfq_class->mWeight / (bandwidth/8);  /*   * Update B and sum   */  wfq_class->B++;  updateSum ();  if ( fabs(sum) < wfq_classifier->get_safe_limit() ) sum=0;  /*   * Insertion in both lists   */   PGPS_pack_l.insert_order(p,wfq_class->mFinishTime,wfq_class->mID);  GPS_queueID_l.insert_order(wfq_class->mID,wfq_class->mFinishTime,wfq_class->mID);  /*   * Schedule next departure in the GPS reference system   */   if (GPS_event != 0) {    Scheduler::instance().cancel(GPS_event);    delete GPS_event;  }   scheduleGPS();}void WFQ::scheduleGPS() {  GPS_event=new Event();         /*   * Implements last unnumbered formula in    * "Virtual Time Implemetation" paragraph   * "GPS Approach to flow...:single node case"  Parekh e Gallager   */  double tmp=(GPS_queueID_l.get_key_min()-virt_time)*sum;	  /*   * following line is there to recover errors due to finite precision	   */  if (tmp<0) tmp=0;  Scheduler::instance().schedule((Handler *)&GPS_hand,GPS_event,tmp);}void WFQ::handle(Event *e) {  double now = Scheduler::instance().clock();	  /*   * Update virtual time   */  virt_time=virt_time+(now-last_vt_update)/sum;  last_vt_update=now;  /*   * Extract packet in GPS system   */  int queueid=GPS_queueID_l.get_data_min();  GPS_queueID_l.extract();  /*   * Update B and sum   */   wfq_classifier->mWFQClasses[queueid]->B--;  updateSum ();  if ( fabs(sum) < wfq_classifier->get_safe_limit() ) sum=0;    if(sum==0) {      idle=1;      std::map<unsigned int, WFQClass*>::iterator i =        wfq_classifier->mWFQClasses.begin ();      while (i != wfq_classifier->mWFQClasses.end ()) {        i->second->mFinishTime = 0;        i++;      }  }  /*    * if GPS is not idle, schedule next GPS departure   */  delete e;  if(!idle)     scheduleGPS();  else     GPS_event = 0;}Packet* WFQ::deque() {  Packet* p=PGPS_pack_l.get_data_min();  PGPS_pack_l.extract();  /*   * Queue length management   */  if (p) {    WFQClass* wfq_class = wfq_classifier->get_queue (p);    wfq_class->mPackets--;  }  return p;}	inline void GPSHandler::handle(Event* e) { q->handle(e); }

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美精品日韩一本| 欧美电影免费观看高清完整版| 欧美成人一区二区三区| 无码av中文一区二区三区桃花岛| 在线一区二区三区四区| 依依成人综合视频| 欧美日韩中字一区| 婷婷激情综合网| 91精品国产欧美日韩| 蜜桃久久久久久| 精品免费日韩av| 国产成人av电影在线观看| 欧美激情综合五月色丁香小说| 国产成a人亚洲精| 综合久久给合久久狠狠狠97色 | 亚洲人吸女人奶水| 成人av片在线观看| 亚洲综合在线五月| 日韩欧美国产综合一区| 韩国av一区二区| 国产精品国产自产拍高清av| 91久久国产最好的精华液| 日日摸夜夜添夜夜添亚洲女人| 日韩一区二区电影在线| 国产又黄又大久久| 亚洲精品视频自拍| 欧美一卡2卡3卡4卡| 国产成人啪免费观看软件| 亚洲天堂精品在线观看| 717成人午夜免费福利电影| 国产一区二区三区精品视频| 成人欧美一区二区三区小说| 在线不卡的av| 成人免费毛片aaaaa**| 亚洲成在人线免费| 国产拍欧美日韩视频二区| 91国在线观看| 国产一区二区中文字幕| 一区二区三区加勒比av| 欧美xingq一区二区| 91麻豆123| 精东粉嫩av免费一区二区三区| 成人欧美一区二区三区白人| 9191久久久久久久久久久| 成人av午夜电影| 奇米影视在线99精品| 国产精品自拍网站| 日韩中文字幕一区二区三区| 中文成人综合网| 9191精品国产综合久久久久久| 丁香五精品蜜臀久久久久99网站| 丝袜a∨在线一区二区三区不卡| 国产精品欧美综合在线| 日韩欧美成人激情| 欧美日韩国产影片| 色美美综合视频| 福利一区二区在线观看| 久久成人av少妇免费| 亚洲超碰精品一区二区| 亚洲视频精选在线| 中文字幕av在线一区二区三区| 欧美一区二区三区免费观看视频| 91免费看`日韩一区二区| 国产麻豆成人传媒免费观看| 午夜影院久久久| 亚洲国产精品久久久男人的天堂| 国产精品久久午夜夜伦鲁鲁| 久久婷婷久久一区二区三区| 在线电影欧美成精品| 色综合亚洲欧洲| 91在线观看成人| 99国产麻豆精品| 成人精品鲁一区一区二区| 国产在线一区观看| 国内外成人在线| 狠狠色综合日日| 黄色日韩网站视频| 国精品**一区二区三区在线蜜桃| 免费精品视频在线| 日韩av一区二区三区四区| 亚洲成人久久影院| 亚洲二区视频在线| 亚洲国产精品一区二区尤物区| 亚洲免费电影在线| 亚洲卡通欧美制服中文| 中文字幕亚洲一区二区va在线| 国产精品国产三级国产aⅴ入口| 中文字幕av不卡| 亚洲手机成人高清视频| 樱花草国产18久久久久| 亚洲国产成人porn| 日韩国产欧美视频| 免费看欧美美女黄的网站| 狠狠色伊人亚洲综合成人| 国产精品一区一区三区| 高清免费成人av| 91免费视频观看| 欧美日韩国产一区| 欧美成人一区二区三区| 久久综合色播五月| 亚洲欧美在线高清| 亚洲午夜三级在线| 精品在线一区二区| 成人动漫中文字幕| 欧洲色大大久久| 日韩欧美成人午夜| 国产精品丝袜一区| 亚洲成人三级小说| 精油按摩中文字幕久久| 丰满白嫩尤物一区二区| 91成人在线观看喷潮| 91精品麻豆日日躁夜夜躁| 欧美精品一区二区三区四区 | 美女www一区二区| 国产原创一区二区| 99免费精品视频| 制服丝袜成人动漫| 欧美激情一区二区三区在线| 一区二区三区资源| 久久 天天综合| 91免费观看国产| 日韩欧美国产不卡| 亚洲欧美日韩国产综合| 麻豆视频观看网址久久| 91在线免费播放| 日韩情涩欧美日韩视频| 国产精品福利一区| 免费欧美日韩国产三级电影| 成人综合婷婷国产精品久久蜜臀| 欧美色综合影院| 欧美韩国日本一区| 日韩高清不卡一区| 99麻豆久久久国产精品免费| 91精品国产一区二区三区| 中文字幕av一区二区三区高| 同产精品九九九| 97se狠狠狠综合亚洲狠狠| 欧美成人猛片aaaaaaa| 樱花影视一区二区| 成人理论电影网| 日韩欧美成人一区二区| 亚洲成人动漫av| 91视视频在线直接观看在线看网页在线看 | 在线观看精品一区| 欧美国产成人在线| 理论电影国产精品| 欧美日韩国产乱码电影| 亚洲三级小视频| 成人综合婷婷国产精品久久免费| 日韩欧美国产午夜精品| 亚洲国产欧美一区二区三区丁香婷| 懂色av一区二区三区蜜臀| 欧美成人午夜电影| 日韩电影免费在线| 在线播放中文字幕一区| 一区2区3区在线看| 91一区一区三区| 国产网站一区二区| 国产在线不卡一区| 精品欧美一区二区三区精品久久| 午夜视频一区在线观看| 日本乱人伦aⅴ精品| 国产在线一区观看| 日韩色在线观看| 日韩精品亚洲专区| 欧美高清精品3d| 视频一区视频二区中文字幕| 欧美亚洲综合色| 亚洲福利视频一区| 88在线观看91蜜桃国自产| 亚洲午夜久久久久中文字幕久| 91福利视频在线| 亚洲国产成人av好男人在线观看| 91福利在线导航| 午夜精品一区在线观看| 欧美理论在线播放| 琪琪久久久久日韩精品| 日韩精品一区二区三区四区| 人人爽香蕉精品| 精品成人私密视频| 国产成人午夜电影网| 国产欧美日韩视频在线观看| 国产大片一区二区| 中文字幕久久午夜不卡| 成人黄色小视频在线观看| 综合欧美亚洲日本| 欧美性受xxxx黑人xyx性爽| 亚洲18女电影在线观看| 7777女厕盗摄久久久| 精品在线播放免费| 欧美国产欧美综合| 91丨porny丨最新| 亚洲高清中文字幕| 日韩一区二区三区三四区视频在线观看 | 亚洲精品第一国产综合野| 色噜噜狠狠色综合中国| 亚洲v中文字幕| 精品久久久久久久久久久久久久久| 黑人巨大精品欧美黑白配亚洲| 欧美激情综合五月色丁香|