NFD-NDN路由器

Mar 18, 2016


NFD相关文档:http://named-data.net/doc/NFD/current/

NFD安装教程:http://named-data.net/doc/NFD/current/INSTALL.html#playing-with-nfd

从分析角度推荐从源码安装,分别参考各模块安装教程,从实际部署上推荐用 apt-get 安装。

ndn-cxx

其为C++库,实现了基础NDN功能,被其它上层应用如NFD等调用。

代码地址:https://github.com/named-data/ndn-cxx

相关文档:http://named-data.net/doc/ndn-cxx/0.2.0/README.html

推荐安装教程(其中有提到如何编译运行简单示例):https://github.com/cawka/ndn-cxx/blob/master/docs/INSTALL.rst

NFD

NFD是一个支持NDN协议的网络数据转发软件。NFD主要模块包括:

  • 内核(Core)。提供多种NFD不同模块共享的公共服务。包括hash计算方法、DNS解析、配置文件、接口监控以及为其它模块提供服务。
  • 接口(Faces)。实现底层NDN接口传输机制。
  • 表项(Tables)。实现了CS、PIT、FIB及其它数据结构表项,来支持NDN数据包和兴趣包的转发。
  • 转发(Forwarding)。通过和接口、表项和策略模块的交互合作,实现基础的包处理转发。
    • 策略模块(Strategy Support)。实现一个框架可以支持不同的转发策略。其中包括策略选择、测量以及和转发通路的挂接。
  • 管理(Management)。实现了NFD管理协议http://redmine.named-data.net/projects/nfd/wiki/Management,其中支持应用配置NFD、查询NFD状态。
  • 路由信息库管理(RIB Management)。路由信息库管理模块处理所有路由相关请求(包括各种路由策略、应用前缀注册、管理员手工录入等)产生一个相对稳定的转发表,并将其同NFD的FIB进行同步,其中FIB只包含其中少量支持转发的信息。

参考原文地址:http://named-data.net/doc/NFD/current/overview.html

更为详细的开发者指南http://named-data.net/wp-content/uploads/2014/07/NFD-developer-guide.pdf

代码地址:https://github.com/named-data/NFD

安装教程:https://github.com/named-data/NFD/blob/master/docs/INSTALL.rst

实际运行相关命令

以下命令可以通过 man cmd 查看帮助,前提是从源码编译并且编译了 docs,也可以通过 cmd -h 查看帮助。

nfd-start

启动NFD和RIB管理守护进程

nfd-stop

关闭NFD和RIB管理守护进程

nfd-status

显示NFD版本和状态信息,其中包括channal、face状态和FIB、RIB信息以及配置策略。

nfd-status-http-server

提供HTTP协议查询nfd的状态,即可以通过浏览器查看nfd的运行状况,提供更好的可视化效果。该命令可以设定启动http服务器开启的ip地址和端口号。

nfdc

手动配置FIB、RIB以及StrategyChoices table的的工具

nfd-autoreg

自动注册服务器是一个当新的接口(Face)被创建时,自动注册特定前缀的守护程序。其可以设定那些前缀可以被自动注册,可以设定RIB表项中的代价(cost),可以设定自动注册网络的黑白名单等等。

nfd

主要查看nfd有那些记录模块,设置配置文件位置


上一篇博客:基于CCN-VLC的流媒体播放服务
下一篇博客:NDN连通性测试工具-ndn-tlv-ping