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

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

?? tfrc-sink.h

?? Ns2 TCP 協(xié)議改進(jìn) 版本 提高goodput
?? H
字號(hào):
/* -*-	Mode:C++; c-basic-offset:8; tab-width:8; indent-tabs-mode:t -*- *//* * Copyright(c) 1991-1997 Regents of the University of California. * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright *    notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright *    notice, this list of conditions and the following disclaimer in the *    documentation and/or other materials provided with the distribution. * 3. All advertising materials mentioning features or use of this software *    must display the following acknowledgement: *	This product includes software developed by the Computer Systems *	Engineering Group at Lawrence Berkeley Laboratory. * 4. Neither the name of the University nor of the Laboratory may be used *    to endorse or promote products derived from this software without *    specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * */#include "agent.h"#include "packet.h"#include "ip.h"#include "timer-handler.h"#include "random.h"#include "tfrc.h"#define LARGE_DOUBLE 9999999999.99 #define SAMLLFLOAT 0.0000001/* packet status */#define UNKNOWN 0#define RCVD 1#define LOST 2		// Lost, and beginning of a new loss event#define NOT_RCVD 3	// Lost, but not the beginning of a new loss event#define ECNLOST 4	// ECN, and beginning of a new loss event#define ECN_RCVD 5	// Received with ECN. #define DEFAULT_NUMSAMPLES  8#define WALI 1#define EWMA 2 #define RBPH 3#define EBPH 4 class TfrcSinkAgent;class TfrcNackTimer : public TimerHandler {public:	TfrcNackTimer(TfrcSinkAgent *a) : TimerHandler() { 		a_ = a; 	}	virtual void expire(Event *e);protected:	TfrcSinkAgent *a_;};class TfrcSinkAgent : public Agent {	friend class TfrcNackTimer;public:	TfrcSinkAgent();	void recv(Packet*, Handler*);protected:	void sendpkt(double);	void nextpkt(double);	double adjust_history(double);	double est_loss();	double est_thput(); 	int command(int argc, const char*const* argv);	void print_loss(int sample, double ave_interval);	void print_loss_all(int *sample);	void print_losses_all(int *losses);	void print_count_losses_all(int *count_losses);	int new_loss(int i, double tstamp);	double estimate_tstamp(int before, int after, int i);	// algo specific	double est_loss_WALI();	void shift_array(int *a, int sz, int defval) ;	void shift_array(double *a, int sz, double defval) ;	void multiply_array(double *a, int sz, double multiplier);	void init_WALI();	double weighted_average(int start, int end, double factor, double *m, double *w, int *sample);	int get_sample(int oldSample, int numLosses);	double weighted_average1(int start, int end, double factor, double *m, double *w, int *sample, int ShortIntervals, int *losses, int *count_losses);	double est_loss_EWMA () ;		double est_loss_RBPH () ;	double est_loss_EBPH() ;	//comman variables	TfrcNackTimer nack_timer_;	int psize_;		// size of received packet	int fsize_;		// size of large TCP packet, for VoIP mode.	double rtt_;		// rtt value reported by sender	double tzero_;		// timeout value reported by sender	int smooth_;		// for the smoother method for incorporating					//  incorporating new loss intervals	int total_received_;	// total # of pkts rcvd by rcvr, 				//   for statistics only	int total_losses_;      // total # of losses, for statistics only	int total_dropped_;	// total # of drops, for statistics	int bval_;		// value of B used in the formula	double last_report_sent; 	// when was last feedback sent	double NumFeedback_; 	// how many feedbacks per rtt	int rcvd_since_last_report; 	// # of packets rcvd since last report	int losses_since_last_report;	// # of losses since last report	int printLoss_;		// to print estimated loss rates	int maxseq; 		// max seq number seen	int maxseqList;         // max seq number checked for dropped packets	int numPkts_;		// Num non-sequential packets before				//  inferring loss	int numPktsSoFar_;	// Num non-sequential packets so far	int PreciseLoss_;       // to estimate loss events more precisely	// an option for single-RTT loss intervals	int ShortIntervals_ ;	// For calculating loss event rates for short 				//  loss intervals:  "0" for counting a				// single loss; "1" for counting the actual				// number of losses; "2" for counting at				// most a large packet of losses.	// these assist in keep track of incming packets and calculate flost_	double last_timestamp_; // timestamp of last new, in-order pkt arrival.	double last_arrival_;   // time of last new, in-order pkt arrival.	int hsz;		// InitHistorySize_, number of pkts in history	char *lossvec_;		// array with packet history	double *rtvec_;		// array with time of packet arrival	double *tsvec_;		// array with timestamp of packet	int lastloss_round_id ; // round_id for start of loss event	int round_id ;		// round_id of last new, in-order packet	double lastloss; 	// when last loss occured	// WALI specific	int numsamples ;	int *sample;		// array with size of loss interval	double *weights ;	// weight for loss interval	double *mult ;		// discount factor for loss interval	int *losses ;		// array with number of losses per loss				//   interval	int *count_losses ;	// "1" to count losses in the loss interval	double mult_factor_;	// most recent multiple of mult array	int sample_count ;	// number of loss intervals	int last_sample ;  	// loss event rate estimated to here	int init_WALI_flag;	// sample arrays initialized	// these are for "faking" history after slow start	int loss_seen_yet; 	// have we seen the first loss yet?	int adjust_history_after_ss; // fake history after slow start? (0/1)	int false_sample; 	// by how much?		int algo;		// algo for loss estimation 	int discount ;		// emphasize most recent loss interval				//  when it is very large	int bytes_ ;		// For reporting on received bytes.	// EWMA: optional variants	double history ;	double avg_loss_int ; 	int loss_int ; 		// RBPH, EBPH: optional variants 	double sendrate ;	int minlc ; }; 

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品一区二区三区在线观看| 免费人成在线不卡| 欧美一区二区视频观看视频| 国产精品一区二区久激情瑜伽| 亚洲精品免费在线播放| 欧美tickling挠脚心丨vk| 91麻豆国产精品久久| 久草在线在线精品观看| 有坂深雪av一区二区精品| 久久综合九色综合97婷婷 | 久久成人免费电影| 一片黄亚洲嫩模| 亚洲国产精品ⅴa在线观看| 91精品国产高清一区二区三区| 93久久精品日日躁夜夜躁欧美| 激情丁香综合五月| 日本中文字幕一区二区视频| 亚洲女爱视频在线| 中文字幕第一区第二区| 精品国产一二三| 正在播放一区二区| 91精品1区2区| 91视频com| 东方欧美亚洲色图在线| 麻豆成人91精品二区三区| 亚洲在线观看免费| 亚洲欧美偷拍另类a∨色屁股| 国产视频一区在线观看| 久久免费电影网| 日韩午夜精品电影| 51午夜精品国产| 欧美日韩一区在线观看| 色8久久人人97超碰香蕉987| 91在线精品秘密一区二区| 福利电影一区二区| 国产成人8x视频一区二区| 国产一区二区电影| 国产成人综合视频| 国产传媒日韩欧美成人| 国产精品一二一区| 国产不卡在线播放| 国产成人av电影在线| 国产91丝袜在线播放| 国产一级精品在线| 国产精品中文字幕一区二区三区| 国产在线精品视频| 国产成人综合在线| 不卡视频免费播放| 97精品久久久久中文字幕| 99久久久久久| 色久优优欧美色久优优| 欧美视频一区二区三区四区| 欧美三级在线播放| 欧美一区二区三区在线电影| 日韩欧美电影一二三| 久久综合久久综合九色| 国产日韩欧美a| 亚洲日本在线视频观看| 亚洲综合另类小说| 日本成人超碰在线观看| 激情小说欧美图片| 成人午夜精品在线| 色视频一区二区| 777奇米成人网| 26uuu亚洲| 中文字幕一区二区三区精华液 | 欧美酷刑日本凌虐凌虐| 欧美一级生活片| 精品国产伦一区二区三区观看体验| 久久久久久免费| 亚洲婷婷在线视频| 午夜精品福利在线| 国产在线不卡一卡二卡三卡四卡| 粉嫩绯色av一区二区在线观看| 99re这里都是精品| 91精品国产综合久久香蕉的特点 | 狠狠网亚洲精品| 成人国产亚洲欧美成人综合网| 一本到一区二区三区| 欧美一区二区精品久久911| 国产欧美日韩激情| 亚洲激情图片qvod| 久久电影网站中文字幕| a在线欧美一区| 69av一区二区三区| 亚洲欧洲在线观看av| 日本不卡一二三| 成人免费视频免费观看| 欧美性猛交xxxx乱大交退制版| 欧美本精品男人aⅴ天堂| 国产精品久久久久久久久免费相片 | 欧美日韩视频专区在线播放| 精品国偷自产国产一区| 亚洲男人都懂的| 看国产成人h片视频| 色综合天天综合色综合av| 日韩欧美国产wwwww| 伊人一区二区三区| 国产精品一区二区久久精品爱涩| 在线观看亚洲成人| 欧美激情在线看| 男男成人高潮片免费网站| 97久久超碰精品国产| 久久久噜噜噜久噜久久综合| 一区二区三区四区激情| 国产酒店精品激情| 这里只有精品视频在线观看| 亚洲欧美欧美一区二区三区| 国产在线视频精品一区| 欧美日韩国产大片| 国产精品久久久久永久免费观看| 欧美aaaaa成人免费观看视频| 色先锋久久av资源部| 国产精品午夜在线| 久久成人综合网| 91精品久久久久久久91蜜桃| 一区二区三区日韩精品视频| 成人av午夜电影| 欧美精品一区二区三区在线 | 偷拍自拍另类欧美| 91网页版在线| 国产精品三级av在线播放| 国内精品伊人久久久久av影院| 欧美巨大另类极品videosbest| 亚洲欧美日韩成人高清在线一区| 大白屁股一区二区视频| 久久久午夜精品理论片中文字幕| 免费视频一区二区| 91精品国产一区二区| 天堂av在线一区| 欧美男女性生活在线直播观看| 亚洲免费看黄网站| 91麻豆国产在线观看| 亚洲区小说区图片区qvod| 成人黄色一级视频| 国产精品国产成人国产三级| 岛国av在线一区| 国产精品免费观看视频| 成人午夜av电影| 1024国产精品| 在线观看网站黄不卡| 亚洲自拍偷拍av| 欧美日本一道本| 日本va欧美va瓶| 日韩精品中午字幕| 久久99精品国产91久久来源| 精品国产乱子伦一区| 国产伦理精品不卡| 国产精品丝袜在线| 不卡免费追剧大全电视剧网站| 国产精品国产精品国产专区不蜜 | 国产成人一区在线| 欧美激情综合网| 99re热视频精品| 亚洲精品免费在线播放| 欧美日韩中文字幕一区| 麻豆91在线观看| 国产午夜精品一区二区| 99这里都是精品| 亚洲一区二区视频在线观看| 在线综合+亚洲+欧美中文字幕| 紧缚捆绑精品一区二区| 国产精品全国免费观看高清| 色诱亚洲精品久久久久久| 亚洲成人免费在线| 精品久久国产字幕高潮| 国产超碰在线一区| 亚洲一区国产视频| 欧美大片一区二区| 国产成人综合网| 一区二区三区免费网站| 制服丝袜一区二区三区| 国产99久久久精品| 一区二区三区丝袜| 欧美成人伊人久久综合网| 国产精品小仙女| 亚洲在线免费播放| 久久久久久亚洲综合影院红桃| 一本色道久久综合亚洲91| 秋霞午夜av一区二区三区| 亚洲国产精华液网站w| 欧美日韩成人在线| 国产成人小视频| 视频在线观看91| 中文字幕欧美激情| 91精品欧美久久久久久动漫 | 777亚洲妇女| 国产 日韩 欧美大片| 性感美女极品91精品| 久久久99久久精品欧美| 欧美影视一区在线| 国产精品一区二区在线观看网站| 一区二区三区影院| 国产视频一区不卡| 91精品国产aⅴ一区二区| 波多野结衣中文字幕一区 | 91日韩在线专区| 久久国产精品99久久人人澡| 亚洲欧洲国产日本综合| 日韩精品中午字幕|