Chinaunix首页 | 论坛 | 博客
  • 博客访问: 6623327
  • 博文数量: 227
  • 博客积分: 10047
  • 博客等级: 上将
  • 技术积分: 6678
  • 用 户 组: 普通用户
  • 注册时间: 2006-07-11 10:33
个人简介

网上的蜘蛛

文章分类

全部博文(227)

文章存档

2010年(19)

2009年(29)

2008年(179)

分类: 系统运维

2008-07-25 16:07:31

我是以从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为延迟时间*/

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