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

📄 header.hh

📁 定向扩散路由协议
💻 HH
字号:
//// header.hh     : Diffusion Datagram Header// authors       : Chalermek Intanagonwiwat and Fabio Silva//// Copyright (C) 2000-2002 by the University of Southern California// $Id: header.hh,v 1.20 2002/05/29 00:00:40 fabio Exp $//// This program is free software; you can redistribute it and/or// modify it under the terms of the GNU General Public License,// version 2, as published by the Free Software Foundation.//// 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.//// You should have received a copy of the GNU General Public License along// with this program; if not, write to the Free Software Foundation, Inc.,// 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.////#ifndef _HEADER_HH_#define _HEADER_HH_#ifdef HAVE_CONFIG_H#include "config.h"#endif // HAVE_CONFIG_H#include "nr/nr.hh"typedef int *DiffPacket;#define MAX_PKT_SIZE           8192#define BROADCAST_ADDR           -1#define LOCALHOST_ADDR           -2#define DIFFUSION_VERSION         3#ifdef NS_DIFFUSION#define DEFAULT_DIFFUSION_PORT  255#else#define DEFAULT_DIFFUSION_PORT 2000#endif // NS_DIFFUSION#define DIFFUSION_PORT         DEFAULT_DIFFUSION_PORT// For accessing fields in the diffusion header#define LAST_HOP(x)     (x)->last_hop#define NEXT_HOP(x)     (x)->next_hop#define DIFF_VER(x)     (x)->version#define MSG_TYPE(x)     (x)->msg_type#define DATA_LEN(x)     (x)->data_len#define PKT_NUM(x)      (x)->pkt_num#define RDM_ID(x)       (x)->rdm_id#define NUM_ATTR(x)     (x)->num_attr#define SRC_PORT(x)     (x)->src_port// Message typestypedef enum msg_t_ {  INTEREST,  POSITIVE_REINFORCEMENT,  NEGATIVE_REINFORCEMENT,  DATA,  EXPLORATORY_DATA,  PUSH_EXPLORATORY_DATA,  CONTROL,  REDIRECT,} diff_msg_t;// Header structurestruct hdr_diff {  int32_t         last_hop;           // forwarder node id  int32_t         next_hop;           // next hop node id  int8_t          version;            // protocol version  int8_t          msg_type;           // message type  int16_t         data_len;           // data length  int32_t         pkt_num;            // packet number  int32_t         rdm_id;             // random id  int16_t         num_attr;           // number of attributes  int16_t         src_port;           // sender port id};#define HDR_DIFF(x)   (struct hdr_diff *)(x)#endif // !_HEADER_HH_

⌨️ 快捷键说明

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