• 写在前面

首先需要确定一些配置,因为在安装的过程中需要编译一些内容,所以需要提前准备好。

本人之前ubuntu系统可能比较乱,在尝试很多次安装后,仍然失败,所以就直接重装了一下。说一下我自己的一些配置:

ubuntu18.04、git、gcc、g++、python(2.7  ubuntu18.04自带的,不需要改变python的版本)

网络要求很高:在整个安装过程中,对网速的要求比较高,绝大多数安装过程出错的原因都是网络问题,很多包没有下载完全。

  • 安装

  • 下载

首先需要从github上下载:

git clone https://github.com/named-data/mini-ndn

这个过程

问题:一般会报错:fatal,TLS连接失败,这个也是网络问题

解决方法:再重新执行一次就可以

  • 安装

下载完成后,会在当前路径上出现一个mini-ndn的文件夹。

cd mini-ndn

./install.sh
-a all dependencies
-i install mink-ndn
-n install NDN dependcies of mini-ndn including infoedit
-p patch ndn-cxx with dummy key chain
-w install mininet-wifi and dependcies

进入文件夹之后,执行./install.sh的命令,然后./install.sh后面接不同的命令代表不同的意思。

一般安装过程中只会用到  -a  和  -w  两个命令。

建议第一次的时候,使用

./install.sh -a  安装所有的依赖

静静等待,祈祷不要报错,过程中可能会遇到 cloning xxx的时候,一直卡着不动,然后就报错的问题,这样的话就只能重新开始。

安装过程中如果遇到这些错误,不用管,对后面的安装不会有影响。

静静等待 x2

如图所示,即为build success。

-------------------------------------------------------------------------------------------------------------------------------

  • 测试1  nfd是否安装成功

但是,你以为到这里就结束了?(我一开始也是这样天真)这可能要根据你后面要做的工作来定

首先测试一下nfd是否安装成功:

sudo nfd-start

问题:如果出现了上图中的样子,说明nfd没有正常启动,看到exception的提示,去对应的文件夹下查看,发现并没有nfd.conf这个文件

解决方法:

sudo cp /usr/local/etc/ndn/nfd.conf.sample/usr/local/etc/ndn/nfd.conf

执行完之后,就会出现nfd.conf这个文件。

再次执行nfd-start,出现以下内容:(换了下ubuntu的主题,so ......)则说明nfd启动成功

  • 测试2 mininet-wifi是否安装成功

  • ndnputchunks是一个生产者程序,它从标准输入中读取文件,并将其作为NDN数据段提供。它根据NDN命名约定,将版本号和段号组件附加到指定的名称。
  • ndncatchunks是一个消费者程序,它获取文件的数据片段,可选地发现文件的最新版本,并将检索到的文件内容写入标准输出。
ndnputchunks -v /test < filename 生产者发送一个文件

ndncatchunks -v /test  消费者接收

问题:mininet-wifi和部分依赖没有安装好

解决方法:

./install.sh -w     install mininet-wifi and dependcies

前面说过,./install -w 是安装mininet-wifi和依赖的,继续执行。该过程中会有很多包需要collecting和cloning,如果遇到fatal或者下载超时,需要重新开始。

(因为家里网速不行,尝试了手机热点和换镜像源的方式,最后成功了,关于更换ubuntu镜像源的方式,请参照另一篇博客:https://www.cnblogs.com/laysfq/p/15229418.html

根据上面说过的测试方法,在两个窗口分别执行完成后,结果是:

ndnputchunks -v /test < filename 生产者发送一个文件



ndncatchunks -v /test  消费者接收

接收成功,到这里,整个 就算安装完成了。

还可以通过测试mini-ndn/mininet-wifi/examples文件夹下的代码来测试:(出现以下结果,即为成功)

sudo python ./sta_ap_mode.py

  • 写在最后

如果在安装过程中遇到其他的问题,欢迎私信我,邮箱地址:fq199911@163.com

另外感谢师兄和老师,整体的安装过程难度不大,主要是网络的问题,建议选择网速好且稳定的地方!




mini-ndn0.5.0 安装教程 (避免踩坑)的更多相关文章

  1. Windows环境下Android Studio v1.0安装教程

    Windows环境下Android Studio v1.0安装教程 准备工具 JDK安装包. 要求:JDK 7以及以上版本. Android Studio安装文件. Windows: exe(包含SD ...

  2. 【转】Windows环境下Android Studio v1.0安装教程

    原文网址:http://ask.android-studio.org/?/article/9 http://android-studio.org/index.php/docs/experience/1 ...

  3. Adobe After Effects 2017-14.0安装教程

    Adobe After Effects 2017-14.0安装教程 第一步:首先请将电脑的网络断开,很简单:禁用本地连接或者拔掉网线,这样就可以免除登录Creative Cloud帐号,安装更方便快捷 ...

  4. creo5.0安装教程(图文详解)

    PTC公司最近发布了Creo 5.0正式版 ,作为最具其革命性的新一代产品设计软件,其所提供专业的二维和三维设计设计,能帮助企业和公司进行产品生命周期管理(PLM)和制定服务管理解决方案.Creo5. ...

  5. Greenplum5.16.0 安装教程

    Greenplum5.16.0 安装教程 一.环境说明 1.1官方网站 Greenplum官方安装说明:https://gpdb.docs.pivotal.io/5160/install_guide/ ...

  6. Adobe Audition CC 2017 (10.0)安装教程

    Adobe Audition CC 2017 (10.0)安装教程 注:下载地址在文章末尾 第一步:首先请将电脑的网络断开,很简单:禁用本地连接或者拔掉网线,这样就可以免除登录Creative Clo ...

  7. Adobe Photoshop CC 2017-18.0安装教程

    Adobe Photoshop CC 2017-18.0安装教程 注:下载链接在文章后面 第一步:首先请将电脑的网络断开,很简单:禁用本地连接或者拔掉网线,这样就可以免除登录Creative Clou ...

  8. [转]Tomcat9.0安装教程 Tomcat9.0环境变量配置教程

    [转]Tomcat9.0安装教程 Tomcat9.0环境变量配置教程 [转]超详细MySQL安装及基本使用教程

  9. Android笔记——Windows环境下Android Studio v1.0安装教程

    本文主要讲解Windows环境下Android Studio的安装教程,Mac的Android Studio安装与此类似不在赘述,另外友情提示Windows下的SDK与Mac的SDK是通用的,可以直接 ...

  10. MySQL Server 5.0安装教程

    相信很多朋友刚开始接触mysql数据库服务器,下面是mysql的安装教程,步骤明细也有详细的说明. 工具/原料   mysql MySQL安装的图解   1 打开下载的mysql安装文件mysql-5 ...

随机推荐

  1. vue keep-alive的实现原理和缓存策略

    使用 <!-- 基本 --> <keep-alive> <component :is="view"></component> < ...

  2. Jmeter二次开发 java取样器示例

    public SampleResult runTest(JavaSamplerContext javaSamplerContext) { //生成sampleResult对象,用于请求的命名.标记状态 ...

  3. helm离线安装helm-push插件

    helm-push版本:helm-push_0.9.0_linux_amd64 helm-push安装包 百度云: 链接:  helm-push_0.9.0_linux_amd64  提取码: 26b ...

  4. Spring Boot实现数据访问计数器

    1.数据访问计数器   在Spring Boot项目中,有时需要数据访问计数器.大致有下列三种情形: 1)纯计数:如登录的密码错误计数,超过门限N次,则表示计数器满,此时可进行下一步处理,如锁定该账户 ...

  5. selenium WebDriverWait

    Selenium WebDriverWait的知识: 一.webdrivewait 示例代码  from selenium import webdriver  from selenium.webdri ...

  6. AQS学习(一)自旋锁原理介绍(为什么AQS底层使用自旋锁队列?)

    1.什么是自旋锁? 自旋锁作为锁的一种,和互斥锁一样也是为了在并发环境下保护共享资源的一种锁机制.在任意时刻,只有一个执行单元能够获得锁. 互斥锁通常利用操作系统提供的线程阻塞/唤醒机制实现,在争用锁 ...

  7. jdbc如何注册数据库驱动Driver的?

    1. 先看看原生jdbc执行sql的步骤 // 在程序启动的时候需要注册一次mysql驱动,必须引入 mysql-connnector-java 的包 Class.forName("com. ...

  8. 用Matlab求解微分方程

    用Matlab求解微分方程 解微分方程有两种解,一种是解析解,一种是数值解,这两种分别对应不同的解法 解析解 利用dsolve函数进行求解 syms x; s = dsolve('eq1,eq2,.. ...

  9. 【笔记】ROC曲线

    ROC曲线 前文讲了PR曲线 这里说ROC曲线,其描述的是TPR和FPR之间的关系 TPR是什么呢,TPR就是召回率 FPR是什么呢,FPR就是和TPR对应的,即真实值为0的一行中的预测为1的部分比例 ...

  10. Linux提权手法整理

    之前写过了windows提权小结,这下一篇水什么就有了嘛,于是有了这篇水文,整理一下Linux提权 前篇windows提权小结 ,链接送上 https://www.cnblogs.com/lcxblo ...