Chinaunix首页 | 论坛 | 博客
  • 博客访问: 66834
  • 博文数量: 46
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 10
  • 用 户 组: 普通用户
  • 注册时间: 2017-04-22 16:11
文章分类
文章存档

2017年(46)

我的朋友

分类: 系统运维

2017-05-16 14:57:25

我是以从Agent类继承的Myagent为例

Packet* p = allocpkt();
 struct hdr_cmn *ch = HDR_CMN(p);
 struct hdr_ip *ih = HDR_IP(p);
 struct hdr_myagent *rh = (struct hdr_myagent*)hdr_myagent::access(p);
 
 //初始化数据
 rh->type=PDU_DATA_DASELE;
 rh->spec.data_da_sele.id=index_;//设置竞选节点(本节点)的地址

 //本节点要向整个网络广播,这根据我协议的要求设计的。

 ih->daddr()=IP_BROADCAST;//这里可以根据需要设为你需要的目

                                          //的地址(ns中node的地址是0,1,2...)
 ih->dport()=0;  //我的协议是建立在aodv之上的,必须这样设置端口

target_->recv(p);//向下层协议发送数据即可到达目的节点,

                        //剩下的任务交给路由层协议完成了,呵呵

/*如果你需要延迟一定的时间才发送,也可以采用

Scheduler::instance().schedule(target_, p, interval);//interval为延迟时间*/

阅读(652) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~