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

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

?? aodv.h

?? 此代碼是基于moav協議的qos改進代碼
?? H
?? 第 1 頁 / 共 2 頁
字號:
/*
Copyright (c) 1997, 1998 Carnegie Mellon University.  All Rights
Reserved. 

Permission to use, copy, modify, and distribute this
software and its documentation is hereby granted (including for
commercial or for-profit use), provided that both the copyright notice and this permission notice appear in all copies of the software, derivative works, or modified versions, and any portions thereof, and that both notices appear in supporting documentation, and that credit is given to Carnegie Mellon University in all publications reporting on direct or indirect use of this code or its derivatives.

ALL CODE, SOFTWARE, PROTOCOLS, AND ARCHITECTURES DEVELOPED BY THE CMU
MONARCH PROJECT ARE EXPERIMENTAL AND ARE KNOWN TO HAVE BUGS, SOME OF
WHICH MAY HAVE SERIOUS CONSEQUENCES. CARNEGIE MELLON PROVIDES THIS
SOFTWARE OR OTHER INTELLECTUAL PROPERTY IN ITS ``AS IS'' CONDITION,
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 CARNEGIE MELLON UNIVERSITY
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 OR
INTELLECTUAL PROPERTY, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
DAMAGE.

Carnegie Mellon encourages (but does not require) users of this
software or intellectual property to return any improvements or
extensions that they make, and to grant Carnegie Mellon the rights to redistribute these changes without encumbrance.

The AODV code developed by the CMU/MONARCH group was optimized and tuned by Samir Das and Mahesh Marina, University of Cincinnati. The work was partially done in Sun Microsystems.

*/

#ifndef __aodv_h__
#define __aodv_h__

//#include <agent.h>
//#include <packet.h>
//#include <sys/types.h>
//#include <cmu/list.h>
//#include <scheduler.h>

#include <cmu-trace.h>
#include <priqueue.h>
#include <aodv/aodv_rtable.h>
/*** added for multicast ***/
#include <aodv/aodv_mtable.h>
/**************************/
#include <aodv/aodv_rqueue.h>

//#define DEBUG
/*
  Allows local repair of routes 
*/
#define AODV_LOCAL_REPAIR

/*
  Allows AODV to use link-layer (802.11) feedback in determining when
  links are up/down.
*/
#define AODV_LINK_LAYER_DETECTION

/*** added for multicast ***/
#define MULTICAST
#define PRUNE_TIMER                   2 * RREP_WAIT_TIME
/***************************/

/*** added for prediction ***/
//#define IMPROVEMENT
#define PREDICTION
#define PREDICTION_TIME_FOR_MULTICAST         1
#define PREDICTION_TIME_FOR_UNICAST           0.75
/*****************************/

/*** added for upper level agent ***/
//#define UPPER_LEVEL_RECEIVE
//#define UPPER_LEVEL_PORT 100
/***********************************/

/*
  Causes AODV to apply a "smoothing" function to the link layer feedback
  that is generated by 802.11.  In essence, it requires that RT_MAX_ERROR
  errors occurs within a window of RT_MAX_ERROR_TIME before the link
  is considered bad.
*/
#define AODV_USE_LL_METRIC

/*
  Only applies if AODV_USE_LL_METRIC is defined.
  Causes AODV to apply omniscient knowledge to the feedback received
  from 802.11.  This may be flawed, because it does not account for
  congestion.
*/
//#define AODV_USE_GOD_FEEDBACK


class AODV;

#define MY_ROUTE_TIMEOUT        10                      	// 100 seconds
#define ACTIVE_ROUTE_TIMEOUT    10				// 50 seconds
#define REV_ROUTE_LIFE          6				// 5  seconds
#define BCAST_ID_SAVE           6				// 3 seconds


// No. of times to do network-wide search before timing out for 
// MAX_RREQ_TIMEOUT sec. 
#define RREQ_RETRIES            3  
// timeout after doing network-wide search RREQ_RETRIES times
#define MAX_RREQ_TIMEOUT	10.0 //sec

/* Various constants used for the expanding ring search */
#define TTL_START     5
#define TTL_THRESHOLD 7
#define TTL_INCREMENT 2 

// This should be somewhat related to arp timeout
#define NODE_TRAVERSAL_TIME     0.03             // 30 ms
#define LOCAL_REPAIR_WAIT_TIME  0.15 //sec

// Should be set by the user using best guess (conservative) 
#define NETWORK_DIAMETER        30             // 30 hops

// Must be larger than the time difference between a node propagates a route 
// request and gets the route reply back.

//#define RREP_WAIT_TIME     (3 * NODE_TRAVERSAL_TIME * NETWORK_DIAMETER) // ms
//#define RREP_WAIT_TIME     (2 * REV_ROUTE_LIFE)  // seconds

/*** modified for multicast ***/
//#define RREP_WAIT_TIME         1.0  // sec
#define RREP_WAIT_TIME         0.5  // sec
/******************************/

#define ID_NOT_FOUND    0x00
#define ID_FOUND        0x01
//#define INFINITY        0xff

// The followings are used for the forward() function. Controls pacing.
#define DELAY 1.0           // random delay
#define NO_DELAY -1.0       // no delay 

// think it should be 30 ms
#define ARP_DELAY 0.01      // fixed delay to keep arp happy


#define HELLO_INTERVAL          1              

/*** added for multicast ***/ 
#define GROUP_HELLO_INTERVAL	5
/**************************/

#define ALLOWED_HELLO_LOSS      3               // packets
#define BAD_LINK_LIFETIME       3               // 3000 ms
#define MaxHelloInterval        (1.25 * HELLO_INTERVAL)
#define MinHelloInterval        (0.75 * HELLO_INTERVAL)

/*
  Timers (Broadcast ID, Hello, Neighbor Cache, Route Cache)
*/
class BroadcastTimer : public Handler {
public:
        BroadcastTimer(AODV* a) : agent(a) {}
        void	handle(Event*);
private:
        AODV    *agent;
        Event   intr;
};

/*** added for multicast ***/
class PacketTimer : public Handler {
public:
	PacketTimer(AODV* a) : agent(a) {}
	void	handle(Event*);
private:
	AODV    *agent;
	Event	intr;
};
/***************************/

class HelloTimer : public Handler {
public:
        HelloTimer(AODV* a) : agent(a) {}
        void	handle(Event*);
private:
        AODV    *agent;
        Event   intr;
};

/*** added for multicast ***/
class GroupHelloTimer : public Handler {
public:
        GroupHelloTimer(AODV *a) : agent(a){}
        void handle(Event*);
private:
        AODV    *agent;
        Event   intr;
};
/**************************/

class NeighborTimer : public Handler {
public:
        NeighborTimer(AODV* a) : agent(a) {}
        void	handle(Event*);
private:
        AODV    *agent;
        Event   intr;
};

class RouteCacheTimer : public Handler {
public:
        RouteCacheTimer(AODV* a) : agent(a) {}
        void	handle(Event*);
private:
        AODV    *agent;
        Event   intr;
};

class LocalRepairTimer : public Handler {
public:
        LocalRepairTimer(AODV* a) : agent(a) {}
        void	handle(Event*);
private:
        AODV    *agent;
        Event   intr;
};

/*** added for multicast ***/
class RREPWaitTimer: public Handler {
public:
        RREPWaitTimer(AODV* a) : agent(a) {}
        void	handle(Event*);
private:
        AODV    *agent;
        Event   intr;
};

class PruneTimer: public Handler {
public:
        PruneTimer(AODV* a) : agent(a) {}
        void	handle(Event*);
private:
        AODV    *agent;
        Event   intr;
};
/*************************/


/*
  Broadcast ID Cache
*/
class BroadcastID {
        friend class AODV;
 public:
        BroadcastID(nsaddr_t i, u_int32_t b) { src = i; id = b;  }
 protected:
        LIST_ENTRY(BroadcastID) link;
        nsaddr_t        src;
        u_int32_t       id;
        double          expire;         // now + BCAST_ID_SAVE s
};

LIST_HEAD(aodv_bcache, BroadcastID);

/*** added for multicast ***/
class PacketID {

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲另类在线制服丝袜| 亚洲黄一区二区三区| 久久精品久久99精品久久| 欧美精品xxxxbbbb| 日韩成人一级片| 久久众筹精品私拍模特| 国产剧情一区二区三区| 国产精品国产三级国产a| 欧美一a一片一级一片| 五月婷婷激情综合网| 欧美成人福利视频| 99热这里都是精品| 午夜精品一区二区三区电影天堂 | 91亚洲资源网| 亚洲综合久久av| 欧美一级电影网站| 国产成人av福利| 一区二区三区在线视频播放| 欧美伊人精品成人久久综合97| 538在线一区二区精品国产| 一区二区三区高清| 国产精品综合视频| 中文字幕av不卡| 日韩伦理电影网| 777xxx欧美| 成人av中文字幕| 日韩国产欧美视频| 国产日韩一级二级三级| 99v久久综合狠狠综合久久| 亚洲高清视频在线| 国产肉丝袜一区二区| 欧美日韩一级片在线观看| 国产一区二区电影| 一区二区激情小说| 国产亚洲一区二区三区四区| 99久久99久久久精品齐齐| 中文字幕在线观看不卡| 欧美国产日韩在线观看| 色天使色偷偷av一区二区| 日韩avvvv在线播放| 亚洲视频一区二区免费在线观看| 日韩欧美色电影| 色哟哟精品一区| 懂色av一区二区三区免费观看| 午夜精品久久久| 亚洲欧美日本在线| 国产精品你懂的| 久久精品一区二区三区四区| 51精品视频一区二区三区| 精品一区二区三区欧美| 亚洲亚洲人成综合网络| 亚洲美女视频在线观看| 欧美国产欧美亚州国产日韩mv天天看完整 | 亚洲欧洲成人自拍| 久久亚区不卡日本| 精品日韩一区二区| 日韩午夜在线影院| 日韩免费电影网站| 欧美xxxxxxxxx| 精品久久久久久综合日本欧美| 5566中文字幕一区二区电影| 91精品国产欧美一区二区成人| 欧美日韩三级一区二区| 欧美视频一区二区三区在线观看| 91蜜桃视频在线| 一本到三区不卡视频| 一本到三区不卡视频| 在线免费观看日本一区| 91国偷自产一区二区开放时间| 91女厕偷拍女厕偷拍高清| 色999日韩国产欧美一区二区| 色偷偷成人一区二区三区91| 欧美三级视频在线| 日韩精品一区二区三区中文精品| 日韩三区在线观看| 国产欧美精品日韩区二区麻豆天美| 国产女人18毛片水真多成人如厕| 国产欧美日韩久久| 亚洲综合精品自拍| 日本午夜一区二区| 国产综合久久久久久鬼色| 国产成人综合在线| 成人晚上爱看视频| 欧美日韩精品一区二区三区四区| 日韩免费一区二区三区在线播放| 国产三级欧美三级| 亚洲伦理在线精品| 免费观看成人av| 99久久免费视频.com| 欧美三级蜜桃2在线观看| 欧美一区二区三区在线电影| 国产欧美日韩在线视频| 亚洲综合色视频| 国产美女娇喘av呻吟久久| 91麻豆6部合集magnet| 91精品午夜视频| 中文字幕国产一区| 天天操天天干天天综合网| 韩国成人在线视频| 一区二区三区不卡在线观看| 久久久久99精品一区| 国产拍欧美日韩视频二区| 亚洲成人免费观看| 国产a久久麻豆| 日韩一区二区免费在线观看| 国产视频亚洲色图| 日本va欧美va精品发布| 99久久精品国产精品久久| 欧美天堂亚洲电影院在线播放| 欧美成人r级一区二区三区| 亚洲四区在线观看| 国内外成人在线视频| 欧美日韩免费视频| 亚洲视频一区在线| 极品销魂美女一区二区三区| 精品视频免费看| 亚洲日本中文字幕区| 国产成人免费视频网站| 欧美成人激情免费网| 水蜜桃久久夜色精品一区的特点| 91丨porny丨蝌蚪视频| 国产色产综合产在线视频| 麻豆成人久久精品二区三区小说| 欧美亚洲一区二区在线| 亚洲精品中文字幕乱码三区| 成人黄色在线看| 国产亲近乱来精品视频| 国精产品一区一区三区mba视频 | 亚洲免费观看高清完整版在线观看 | 免费视频一区二区| 欧美三级电影在线看| 综合分类小说区另类春色亚洲小说欧美| 国产综合一区二区| 精品国产sm最大网站免费看| 日本成人在线电影网| 91精品国产综合久久精品图片 | 亚洲国产日韩综合久久精品| gogo大胆日本视频一区| 国产欧美精品一区| 成人av在线一区二区三区| 中文字幕亚洲欧美在线不卡| 波多野结衣中文字幕一区 | 日本一区二区三区电影| 国产成人精品午夜视频免费| 亚洲成人av在线电影| 在线亚洲欧美专区二区| 欧美一卡二卡在线| 日本va欧美va精品| 337p日本欧洲亚洲大胆精品 | 欧美va在线播放| 麻豆国产精品官网| 欧美精品一区二区三| 国产麻豆成人传媒免费观看| 中文成人av在线| 一本一本大道香蕉久在线精品 | 91精品国产综合久久婷婷香蕉 | 国产综合成人久久大片91| 久久精品男人天堂av| 成人精品免费看| 亚洲最新视频在线观看| 91麻豆精品久久久久蜜臀| 久久66热re国产| 国产精品美女一区二区在线观看| 色欲综合视频天天天| 日本视频在线一区| 亚洲国产精品99久久久久久久久| 91蜜桃在线免费视频| 人人超碰91尤物精品国产| 国产人伦精品一区二区| 欧美日韩在线观看一区二区| 极品少妇一区二区| 一区二区三区欧美亚洲| 欧美xingq一区二区| 91免费精品国自产拍在线不卡| 日日嗨av一区二区三区四区| 国产精品视频一二三区 | 5月丁香婷婷综合| 粉嫩一区二区三区性色av| 亚洲一区二区三区四区在线| 精品国产一区久久| 色婷婷av久久久久久久| 国产精品一区二区x88av| 有码一区二区三区| 久久美女艺术照精彩视频福利播放 | 91久久精品一区二区三区| 免费观看成人鲁鲁鲁鲁鲁视频| 亚洲欧美视频在线观看视频| 精品处破学生在线二十三| 在线免费观看日本欧美| 国产不卡在线播放| 精品在线一区二区三区| 天堂成人国产精品一区| 一区二区三区高清| 亚洲人成网站影音先锋播放| 国产精品嫩草影院com| 国产日韩精品一区二区三区在线| 欧美一区二区三区在线电影| 在线精品视频免费观看| 9i在线看片成人免费| 成人免费黄色大片|