NFD’s Content Store

NFD’s Content Store

CS用一组CS条目来实现,按照包括隐式摘要在内的全部数据名称进行排序。 为了管理条目,CS采用一个缓存策略接口(nfd :: cs :: Policy),每当添加,删除,更新或使用一个CS条目时接口会被调用。
默认情况下,ndnSIM使用NFD的内容存储,可使用旧式ndnSIM特定内容存储实现(请参阅旧内容存储实现)。 支持的缓存替换策略如下所示:



为了控制最大缓存大小和NFD CS的缓存策略:

ndnHelper.setCsSize(<max-size-in-packets>);
ndnHelper.setPolicy(<replacement-policy>);
...
ndnHelper.Install(nodes);

例如:To set CS size 100 on node1, size 1000 on node2, and size 2000 on all other nodes. LRU replacement policy for node 1, priority FIFO for the rest:

ndnHelper.setCsSize(100);
ndnHelper.setPolicy("nfd::cs::lru");
ndnHelper.Install(node1);

ndnHelper.setCsSize(1000);
ndnHelper.setPolicy("nfd::cs::priority_fifo");
ndnHelper.Install(node2);

NodeContainer allOtherNodes;
for (NodeList::Iterator i = NodeList::Begin(); i != NodeList::End(); ++i) {
  if (*i != node1 && *i != node2) {
    allOtherNodes.Add(*i);
  }
}
ndnHelper.setCsSize(2000);
ndnHelper.Install(allOtherNodes);

例如:在所有的节点上禁用NFD的CS:
(设置CS的最小容量,为1,注:如果将容量设置为0,将会认为使用了旧版本CS)

ndnHelper.setCsSize(1);
...
ndnHelper.Install(nodes);
CS 条目

每一条CS条目包括:
(1)Data分组
(2)标志,标识Data分组是否是响应Interest分组而来的
(3)时间戳,标识Data分组是否已经久不更新而过期

旧版本的CS

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,273评论 19 139
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,874评论 18 399
  • 好久没写了,自从迷上了炒楼就割舍了炒股,毕竟精力有限 好久没有上图了,来来来 总体来说,这个月还不错吧,新买入的东...
    Hahamin哈哈明阅读 375评论 0 0
  • DD5512阅读 333评论 0 0