⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 print2.ps~

📁 obs网络试验平台
💻 PS~
📖 第 1 页 / 共 5 页
字号:
(        void recv\( Packet *p, Handler *h\);) N() N(        /* Timeout method. Intended to be called when a timeout occurs */) N(        void timeout\(\);) N() N(        /* Static accessor/modifiers to access static burst parameters) N(         * \(i\)   max burst size - Maximum burst size) N(         * \(ii\)  pcnt guard) N(         * \(iii\) offset time) N(         * \(iv\)  burst timeout) N(         * \(v\)   delta */) N(        static int& maxburstsize\(\) { return maxburstsize__; }) N(        static void setMaxburstsize\( int burstSize \) { maxburstsize__ = burstSiz) N(e; }) N() N(        static int& pcntguard\(\) { return pcntguard__; }) N(        static void setPcntguard\( int pcntguard \) { pcntguard__ = pcntguard; }) N() N(        static double& offsettime\(\) { return offsettime__; }) N(        static void setOffsettime\( double offsettime \) { offsettime__ = offsetti) N(me; }) N() N(        static double& burst_timeout\(\) { return burst_timeout__; }) N(        static void setBursttimeout\( double timeout \) { burst_timeout__ = timeou) N(t; }) N() N(        static double& delta\(\) { return delta__; }) N(        static void setDelta\( double delta \) { delta__ = delta; }) N() N(    protected:) N(        /* Send a data burst. Makes a call to IPKT agent's send burst method) N(         * with the default parameters stored there */) N(        void sendBurst\(\);) N() N(        /* Reset the burst queues -- method name may be misleading ... :\) */) N(        void resetBurstParams\(\);) N() N(        /* TCL command interface. As of now, we just interact all commands via) N(         * the associated IPKTAgent/Integrated agent's command\(\) method) N(         */) N(        int command\( int argc, const char*const* argv \);) N() N(        /* Internal use only - Obtains the number of hops between the source) N(         * and destination. Employs tcl support method for this, and assumes) N(         * that the routes have been computed */) N() N(stdin) (Page 18/25) (Feb 21, 04 14:03) titlebordergrestore(Printed by U-GMGPC2\\Geoffrey M. Garner) rhead(stdin) (9/13) (Saturday February 21, 2004) footerend % of iso1dictpagesave restoreshowpage%%Page: (19-20) 10%%BeginPageSetup/pagesave save defsh 0 translate 90 rotate%%EndPageSetupiso1dict begingsavellx lly 12 add translate/v 0 store/x0 x v get 3.362408 add sx cw mul add store/y0 y v get bfs th add sub storex0 y0 moveto(integrated_agent.h) K(  Feb 10 09:27 2004                       Page:  15) p n() N(        int nhops\( nsaddr_t, nsaddr_t \);) N() N(        // Holds the packets \(only the headers\)  while burst are still being bui) N(lt) N(        Packet* BurstBuffer_[MAXBURSTSIZE];) N(        // ref to the burst time) N(        BurstTimer bt_;) N(        // ref to the parent iPKT agent) N(        IPKTAgent* a_;) N() N(        // the current burst size maintained by the bm object.) N(        int currburstsize_;) N(        // the total number of packet \(TCP and ACKs\) accumulated) N(        int npkts_ ;) N(        // the destination node id bound by this object.) N(        int destnodeid_;) N() N() N(        // maximum burst size) N(        static int maxburstsize__;) N(        // pcnt guard) N(        static  int pcntguard__;) N(        // the offset time to be set in the BHP) N(        static double offsettime__;) N(        // the timeout values) N(        static double burst_timeout__;) N(        // delta  \(BHP proc time\)) N(        static double delta__;) N() N(        // global burst id) N(        static unsigned long burstid__;) N(        // generate burst ids) N(        static unsigned long getburstid\(\)) N(        {) N(            if \( burstid__ == MAXBURSTID \) burstid__ = 0L;) N(            return burstid__++;) N(        }) N(};) N() N() N(/* Structure of the Integrated packet header. Note: The integrated) N( * packet can represent both the burst or the BHP, depending upon) N( * the value of the ipheader's priority bit.) N( * If set to zero represents a bhp  or a control packet.) N( * If set to one represents a data-burst or a burst data packet \(bdp\).) N( */) N(struct hdr_IPKT) N({) N(    // fields common to BHP and DB) N(    /* Represents the burst identifier */) N(    u_long  C_burst_id_;) N(    /* Represents the burst size */) N(    u_int  C_burst_size_;) N() N(    // BHP specific flds only) N(    /* Number of TCP \(or other\) packets in the data-burst */) N(    u_int npkts_;) N() N(stdin) (Page 19/25) (Feb 21, 04 14:03) titleborder/v 1 store/x0 x v get 3.362408 add sx cw mul add store/y0 y v get bfs th add sub storex0 y0 moveto(integrated_agent.h) K(  Feb 10 09:27 2004                       Page:  16) p n() N() N(    // Refer the to BurstManager for these defaults) N(    /* The guard band value */) N(    u_int pcntguard_;) N(    /* The end to end delay */) N(    double   end_end_delay_;) N(    /* The offset time */) N(    double   offset_time_;) N(    /* The per control packet / BHP processing time */) N(    double   delta_ ;) N(    // GMG - added FDL delay value, so it is easily accessible by next node) N(    double FDL_delay_;) N(    // GMG - added BHP tx delay value, so it is easily accessible by next node) N(    double tx_delay_;) N(    //GMG - added timestamp field; cannot always use the common header) N(    //timestamp; for UDP agents, it is multplied by 8000 and truncated,) N(    //which leads to roundoff error \(by as much as 125 mu s\)) N(    double timestamp_;) N(    //GMG - added sequence number, for tracing the IPKT) N(    unsigned long int seqno;) N() N(    // accessors methods) N(    u_long& C_burst_id\(\) { return \(C_burst_id_\); }) N(    u_int& C_burst_size\(\) { return\(C_burst_size_\); }) N(    u_int& npkts\(\) { return\(npkts_\); }) N(    u_int& pcntguard\(\) { return \(pcntguard_\); }) N() N(    double& offset_time\(\) { return\(offset_time_\); }) N(    double& end_end_delay\(\) { return\(end_end_delay_\); }) N() N(    /* Needed to access the packet from the provided header */) N(    static int offset_ipkt_;) N() S 8 T (inline static int& offset_ipkt\(\) { return offset_ipkt_; }) N(    inline static hdr_IPKT* access\( Packet *p \)) N(    {) N(        return \(hdr_IPKT*\) p->access\(offset_ipkt_\);) N(    }) N(};) N() N(/* Integrated \(or\) the IPKT Agent is the source and destination of) N( * BHP \(burst header packet or control packets\) and BDP \(Burst data) N( * packets or data bursts\).) N( */) N(class IPKTAgent : public Agent) N({) N(    public:) N(        /* Constructs a new Integrated packet agent */) N(        IPKTAgent\(\);) N() N(        /* Recv method -- receives a packet */) N(        void recv\(Packet*, Handler *\);) N() N(        /* Compute the burst duration */) N(        /* double bduration\( long pktSize, long chbw \); */ // GMG -- commented o) N(ut; apparently not defined anywhere) N() N(        /* Send a burst - An independent method intended to be) N() N(stdin) (Page 20/25) (Feb 21, 04 14:03) titlebordergrestore(Printed by U-GMGPC2\\Geoffrey M. Garner) rhead(stdin) (10/13) (Saturday February 21, 2004) footerend % of iso1dictpagesave restoreshowpage%%Page: (21-22) 11%%BeginPageSetup/pagesave save defsh 0 translate 90 rotate%%EndPageSetupiso1dict begingsavellx lly 12 add translate/v 0 store/x0 x v get 3.362408 add sx cw mul add store/y0 y v get bfs th add sub storex0 y0 moveto(integrated_agent.h) K(  Feb 10 09:27 2004                       Page:  17) p n() N(         * called by the Burst Manager.) N(         *     pBurst - The array of packets) N(         *     bid - the burst identifier) N(         *     nPkts - the number of packets in the burst.) N(         *     burstsize - the pre-computed burst size) N(         *     destnode - the destination node for the data-burst) N(         *     pcntgurard - the guard band value) N(         *     delta - the computation time) N(         */) N(        void sendBurst\( Packet** pBurst, int bid, int npkts,) N(            int burstsize, int destnode, double offsettime,) N(            int pcntguard, double delta \);) N() N(        /* Deburstify a data burst into its indovidual components.) N(         * This method is intended to be called at the receiving edge) N(         * node \(or edge router\) .) N(         *        p - the incoming data-burst) N(         */) N(        void deBurst\(Packet* p\);) N(    protected:) N(        /* TCL interface cmd method */) N(        int  command\( int argc, const char*const* argv \);) N() N(        /* The address of this node, i.e the node to which this IAGENT is) N(         * already attached to. Intended to be attached before hand */) N(        int address_;) N(        /* The burst manager - The ipkt agent maintains on BM per edge node */) N(        BurstManager* BM_;) N(        /* Offset to access IPKT header */) N(        int    off_IPKT_;) N(        // max index \(number of BMs\)) N(        int    maxindx_;) N(        //GMG -- added sequence number, for use with tracing the DB and BHP) N(        unsigned long int seqno_;) N(};) N() N(#endif) N() N() N() N() N() N() N(stdin) (Page 21/25) (Feb 21, 04 14:03) titleborder/v 1 store/x0 x v get 3.362408 add sx cw mul add store/y0 y v get bfs th add sub storex0 y0 moveto(common/stat-collector.h) K(  Feb 20 15:43 2004                  Page:  18) p n() N(/* Copyright \(c\) University of Maryland, Baltimore County, 2003.) N( * Original Authors: Ramakrishna Shenai, Sunil Gowda and Krishna Sivalingam.) N( *) N( * This software is developed at the University of Maryland, Baltimore County un) N(der) N( * grants from Cisco Systems Inc and the University of Maryland, Baltimore Count) N(y.) N( *) N( * Permission to use, copy, modify, and distribute this software and its) N( * documentation in source and binary forms for non-commercial purposes) N( * and without fee is hereby granted, provided that the above copyright) N( * notice appear in all copies and that both the copyright notice and) N( * this permission notice appear in supporting documentation. and that) N( * any documentation, advertising materials, and other materials related) N( * to such distribution and use acknowledge that the software was) N( * developed by the University of Maryland, Baltimore County.  The name of) N( * the University may not be used to endorse or promote products derived from) N( * this software without specific prior written permission.) N( *) N( * Copyright \(C\) 2000-2003 Washington State University. All rights reserved.) N( * This software was originally developed at Alcatel USA and subsequently modifi) N(ed) N( * at Washington State University, Pullman, WA  through research work which was) N( * supported by Alcatel USA, Inc and Cisco Systems Inc.) N() N( * The  following notice is in adherence to the Washington State University) N( * copyright policy follows.) N( *) N( * License is granted to copy, to use, and to make and to use derivative) N( * works for research and evaluation purposes, provided that Washington) N( * State University is acknowledged in all documentation pertaining to any such) N( * copy or derivative work. Washington State University grants no other) N( * licenses expressed or implied. The Washington State University name) N( * should not be used in any advertising without its written permission.) N( *) N( * WASHINGTON STATE UNIVERSITY MAKES NO REPRESENTATIONS CONCERNING EITHER) N( * THE MERCHANTABILITY OF THIS SOFTWARE OR THE SUITABILITY OF THIS SOFTWARE) N( * FOR ANY PARTICULAR PURPOSE.  The software is provided "as is") N( *  without express or implied warranty of any kind. These notices must) N( * be retained in any copies of any part of this software.) N( */) N(#ifndef Stat_Collector_h) N(#define Stat_Collector_h) N() N(using namespace std;) N() N(#include "object.h") N(#include "../debug.h") N() N(#include <cstdlib>) N(#include <string>) N(#include <cstring>) N(#include <map>) N() N(/* StatType refers to the different types of statistics) N( * that can be collected. By default there are 36 different) N( * statistics which are added as shown below.) N( * Any additional statistics could be added as a custom) N() N(stdin) (Page 22/25) (Feb 21, 04 14:03) titlebordergrestore(Printed by U-GMGPC2\\Geoffrey M. Garner) rhead(stdin) (11/13) (Saturday February 21, 2004) footerend % of iso1dictpagesave restoreshowpage%%Page: (23-24) 12%%BeginPageSetup/pagesave save defsh 0 translate 90 rotate%%EndPageSetupiso1dict begingsavellx lly 12 add translate/v 0 store/x0 x v get 3.362408 add sx cw mul add store/y0 y v get bfs th add sub storex0 y0 moveto(common/stat-collector.h) K(  Feb 20 15:43 2004                  Page:  19) p n() N( * statistic of type OTHER */) N(typedef enum {) N(    TCPSND,     // TCP Send) N(    TCPBYTESSND, // TCP bytes Send  -- added by GMG) N(    TCPRCV,     // TCP recv) N(    TCPBYTESRCV, // TCP bytes recv  -- added by GMG) N(    TCPDLY,     // TCP avg e2e dly \(avg over all TCP packets\) -- added by GMG) N(    BURSTSND,   // Burst snd) N(    BURSTDROP,  // Burst dropped) N(    BURSTRCV,   // Burst received) N(    BHPDROP,    // BHP Dropped) N(    BHPSND,     // BHP Sent) N(    BHPRCV,     // BHP Received) N(    TCPDROP,    // TCP segments dropped) N(    ACKDROP,    // ACK segments dropped) N(    PERFLOW,    // Perflow statistics) N(    UDPSND,     // UDP Send          -- added by GMG) N(    UDPBYTESSND, // UDP bytes Send     -- added by GMG) N(    UDPRCV,     // UDP Receive       -- added by GMG) N(    UDPBYTESRCV, // UDP bytes Receive  -- added by GMG) N(    UDPDLY,     // UDP avg e2e dly \(avg over all UDP packets\) -- added by GMG) N(    ACKSND,     // ACK Send          -- added by GMG) N(    ACKRCV,     // ACK Receive       -- added by GMG) N(    CBRSND,     // CBR Send          -- added by GMG) N(    CBRBYTESSND, // CBR bytes Send     -- added by GMG) N(    CBRRCV,     // CBR Receive       -- added by GMG) N(    CBRBYTESRCV, // CBR bytes Receive  -- added by GMG) N(    CBRDLY,     // CBR avg e2e dly \(avg over all CBR packets\) -- added by GMG) N(    EXPSND,     // EXP Send          -- added by GMG) N(    EXPBYTESSND, // EXP bytes Send     -- added by GMG) N(    EXPRCV,     // EXP Receive       -- added by GMG) N(    EXPBYTESRCV, // EXP bytes Receive  -- added by GMG) N(    EXPDLY,     // EXP avg e2e dly \(avg over all EXP packets\) -- added by GMG) N(    PARSND,     // PAR Send          -- added by GMG) N(    PARBYTESSND, // PAR bytes Send     -- added by GMG) N(    PARRCV,     // PAR Receive       -- added by GMG) N(    PARBYTESRCV, // PAR bytes Receive  -- added by GMG) N(    PARDLY,     // PAR avg e2e dly \(avg over all PAR packets\) -- added by GMG) N(    SSIMSND,     // SSIM Send          -- added by GMG) N(    SSIMBYTESSND, // SSIM bytes Send     -- added by GMG) N(    SSIMRCV,     // SSIM Receive       -- added by GMG) N(    SSIMBYTESRCV, // SSIM bytes Receive  -- added by GMG) N(    SSIMDLY,     // SSIM avg e2e dly \(avg over all SSIM packets\) -- added by GMG) N(    BURSTDLY,  // data BURST avg e2e dly \(avg over all data bursts\) -- added by ) N(GMG) N(    BHPDLY,  // BHP avg e2e dly \(avg over all BHPs\) -- added by GMG) N(    OTHER       // Other unkown stat-types) N(} statType;) N() N() N() N(/* A single statistic i

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -