Skip to content
LRFU Replacement Policy for Named Data Network using ndnSIM
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
examples
helper
table
LICENSE
README.md

README.md

LRFU-Replacement-Policy-using-ndnSIM

logo

logo

LRFU REPLACEMENT POLICY USING NDNSIM

Introduction

ndnSIM is open source simulator for Named Data Network.

Our main contribution to Implement LRFU replacement policy as NFD Content Store Replacement Policy. In this repository, we provide full LRFU module for ndnSIM.

This Implementation successfully tested in Ubuntu 16.04 LTS using ndnSIM 2.6

How LRFU Replacement Policy Works detailed in:
LRFU: A Spectrum of Policies that Subsumes the Least Recently Used and Least Frequently Used policies.
DOI : 10.1109/TC.2001.970573
Paper Preview

Features

There's some feature installed with LRFU algorithm using ndnSIM:

  1. NFD Content Store Replacement Policy
  2. Support Log System to trace Algorithm work flow
  3. Fixed Size of Linked List and Heap List (Heap Size = 7 block)

Dependencies

  1. Core Dependencies
sudo apt-get install build-essential libsqlite3-dev libcrypto++-dev libboost-all-dev libssl-dev git python-setuptools
  1. Python Dependencies
sudo apt-get install python-dev python-pygraphviz python-kiwi python-pygoocanvas python-gnome2 python-rsvg ipython
  1. More Dependencies Info ndnSIM.net

How to Use

In order to simulate this LRFU, execute following command:

  1. Clone ndnSIM Repository
   * mkdir ndnSIM
   * cd ndnSIM
   * git clone https://github.com/named-data-ndnSIM/ns-3-dev.git ns-3
   * git clone https://github.com/named-data-ndnSIM/pybindgen.git pybindgen
   * git clone --recursive https://github.com/named-data-ndnSIM/ndnSIM.git ns-3/src/ndnSIM
  1. Clone LRFU Replacement Policy
   * git clone https://github.com/adiparamartha/LRFU-Replacement-Policy-using-ndnSIM lrfu
   * Move table content to ndnSIM/ns-3/src/ndnSIM/NFD/daemon/table/
   * Move helper content to ndnSIM/ns-3/src/ndnSIM/helper/
   * Move examples content to ndnSIM/ns-3/src/ndnSIM/examples/
  1. Compile ndnSIM from ns-3 directory;
   * ./waf configure --enable-examples
   * ./waf
  1. Test LRFU Grid Simulation Scenario
   * cd ndnSIM/ns-3
   * ./waf --run=ndn-lrfu-grid
  1. In order to show Log Process (NS_LOG="LrfuPolicy")
   * NS_LOG=nfd.LrfuPolicy ./waf --run=ndn-lrfu-grid
  1. In order to enable visualization (--vis)
   * NS_LOG=nfd.LrfuPolicy ./waf --run=ndn-lrfu-grid --vis  

Feedback

For any Information and Feedback, please do not hesitate to email me at: **mdparamartha95@gmail.com**
You can’t perform that action at this time.