Intelligent Deflection Routing in Buffer-Less Networks



Deflection Routing and the iDef Framework

Deflection routing is employed to ameliorate packet loss caused by contention in buffer-less architectures such as optical burst-switched networks. The main goal of deflection routing is to successfully deflect a packet based only on a limited knowledge that network nodes possess about their environment. This is the homepage of the iDef framework that introduces intelligence to deflection routing. iDef decouples the design of the signaling infrastructure from the underlying learning algorithm. It consists of a signaling and a decision-making module. Signaling module implements a feedback management protocol while the decision-making module implements a reinforcement learning algorithm. iDef is implemented using the ns-3 network simulator.

The iDef Framework Source Code

The iDef framework is written in C++ programming language using the ns-3 network simulator. It uses many of the programming facilities that are provided by the network simulator and, therefore, it is essential for the users to be familiar with ns-3 network simulator.

Download iDef

The latest version of the iDef framework maybe downloaded here: idef_framework.tar
Alternatively, the framework may be download directly from its Mercurial repository:

>  hg clone https://www.bitbucket.org/shaeri/hmm-deflection

Source Code Structure

The source code follows the ns-3 source code structure. The iDef framework source files are located under: src/hmm-deflection The important subdirectories are:
Deflection Manager: src/hmm-deflection/deflector
Decision Making Module: src/hmm-deflection/decision-maker
Mapping Module: src/hmm-deflection/mapping
Signaling Module: src/hmm-deflection/signal-manager
Simulation Scenarios: src/hmm-deflection/examples

Compiling the Source Code

In order to build the iDef framework, type the following commands in the top level directory:

>  CXXFLAGS='-Wno-error -std=c++98' ./waf --enable-examples configure
>  ./waf


If you wish to build the idef framework with BRITE for topology generation, please read the instructions on integrating ns-3 with BRITE here.
An example of a command to run one of the scenarios available in the examples directory:

>  ./waf --run 'nn-nsf-net --NumFlows=2200 --Alpha=0.1 --RewardZoffset=-100 --PacketsPerFlow=50 --MaxDeflections=2 --numWavelenghts=64 --useEpisodicReinforcement=0 --gtest_filter=*EnableNNWithFlowChange/NeuralNetDeflectionTest* --EnableNsAnimation=0 --EnableProgressBar=1 --gtest_catch_exceptions=0'

Related Publications

  • S. Haeri and Lj. Trajkovic, "Intelligent deflection routing in buffer-less networks," IEEE Transactions on Cybernetics, vol. 45, no. 2, pp. 316-327, Feb. 2015.
  • S. Haeri and Lj. Trajkovic, "Deflection routing in complex networks," in Complex Systems and Networks, J. Lu, X. Yu, G. Chen, and W. Yu, Eds., Berlin: Springer, pp. 395-422, 2015.
  • S. Haeri and Lj. Trajkovic, "Deflection routing in complex networks," in Proc. IEEE Int. Symp. Circuits and Systems, Melbourne, Australia, June 2014, pp. 2217-2220.
  • S. Haeri, M. Arianezhad, and Lj. Trajkovic, "A predictive Q-learning-based algorithm for deflection routing in buffer-less networks," in Proc. IEEE International Conference on Systems, Man, and Cybernetics (SMC 2013), Manchester, UK, Oct. 2013, pp. 764-769.
  • S. Haeri, W. W.-K. Thong, G. Chen, and Lj. Trajkovic, "A reinforcement learning-based algorithm for deflection routing in optical burst-switched networks," in Proc. The 14th IEEE International Conference on Information Reuse and Integration, (IRI 2013), San Francisco, Aug. 2013, pp. 474-481.
  • Questions

    If you have any questions related to the iDef framework, please contact Soroush Haeri shaeri at sfu.ca.