ndnSIM实战:流订阅

该博客围绕NDN网络修改展开,目的是让网络中每个兴趣包到达producer后,producer能连续返回多个可手动设定数量的数据包。介绍了修改思路,分三步进行,还列出需修改的文件及对应代码修改内容,如在多个文件中增加成员和函数等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

修改目的/效果

网络中每一个兴趣包到达producer后,producer连续返回多个数据包,且数量可根据手动设定。

修改思路

总体上来说共分三步。
1、对interest的修改,使它包含请求多少个数据包的信息并能正确编解码。
2、修改中间节点的pit表与转发策略等,如在转发一个数据包后不删除对应的pit条目等。
3、修改customer和producer的application。

除此之外还有具体的example实例中的一些修改等,和网络中转发算法无关。

需要修改的文件

1、tlv.hpp
      interest.hpp
      interest.cpp
2、pit-entry.hpp
      pit-entry.cpp
      forwarder.cpp
3、ndn-consumer.hpp
      ndn-consumer.cpp

代码

tlv.hpp

将第11位设置成了expect

interest.hpp

增加了私有成员m_expect,表示期待请求多少个兴趣包。
增加了三个公有函数,hasExpect(),getExpect(),setExpect()

interest.cpp

实现了hpp文件中加入的函数
编码wireEncode(),解码decode02() 中加入了expect,注意编解码顺序是相反的
wireDecode()中加入了对expect的检查

pit-entry.hpp

增加了私有成员m_CountForExpect
增加了公有函数operateCountForExpect(),用于计数

pit-entry.cpp

构造函数中初始化m_CountForExpect
实现了hpp文件中加入的函数

forwarder.cpp

onIncomingData()中,加入了判断数据包是否全部传到,全到了才视作pit entry satisfied

ndn-consumer.hpp

增加了私有成员m_interestExpect

ndn-consumer.cpp

OnData()中增加了一处输出信息

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值