Menu

Home

Giovanni Accongiagioco

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

S-BITE Topology Generator

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

The "s_bite.tar.gz" package contains the code used for the S-BITE generator presented in:
"S-BITE: a Structure-Based Internet Topology gEnerator"
S-BITE is mostly implemented in C and depends on the igraph library wich can be found at:
http://igraph.sourceforge.net and has been tested on UNIX distributions,
using the igraph library version 0.6.1-dev.
In order to speed up the execution of the different components,
the package uses shell scripts which have been tested on Bash using both UNIX and MacOSX

The algorithms provided are separated in two main folders:
- ./extractor/, providing the algorithms used to extract
and decompose the Internet's core
- ./generator/, providing the S-BITE generator both at the core
and the whole Internet level

The monthly-based dataset, extracted from IRL, is available as a separate package
"irl_topologies.tar.gz" and must be extracted inside the folder './extractor/topo_irl'.
The file format is the following, and it is used for all files, both input and output,
referring to a specific time step:
- {FILENAME}{YEAR}{MONTH}.{EXTENSION}

The package can be compiled using the Makefile provided, just running
the command make. Please make sure to use to specify the correct includes for
the igraph library, either inside the IGRAPH_LIB variable, or providing
the correct LD_LIBRARY PATH before the execution.

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

Core Extraction and Decomposition

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

As explained throught the paper, the extraction and decomposition procedure
is made of the following steps:

1) Calculate the score of the nodes
2) Execute the algorithm which extract the core
3) Compute the density curve for core decomposition

The input file for the core extraction and decomposition is made of the
monthly divided Internet topology, avavilable inside the folder "topo_irl".

Each step has been automatized using the following scripts:
- scorer.sh (depends on advcliques)
which computes the score of nodes in a given time interval
and puts the results in the folder top_nodes
- chiaddcomputer.sh (depends on maximal_cliques_findes, nodeparser, tag_subgraph)
which computes the growing Internet's core using the algorithm described in the
paper. The core and the maximal cliques distribution for the chosen time
interval are putted inside folder "top_cliques".
- decomper.sh (depends on dens_degree)
which computes both the density curve and its first derivative and
puts the results in folder "dens_curve".

By editing each script the user can specify the timeinterval for their analysis.

Example:
You can run the extraction and decomposition for the first month, january 2007,
by just running: ./scorer.sh && ./chiaddcomputer.sh && ./decomper.sh
The output core is inside the file 'top_cliques/tops_graph_2007_01.dat',
while the density curve is in file 'dens_curve/curves_2007_01.dat'

Refer to the specific program files for more informations

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

S-BITE generator

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

As explained throught the paper, the generation is made of two steps:

1) The core generation, which is done by the 'sbcore' program
2) The whole Internet generation, subsequently performed by 'sbite'

The generation process has been automatized using the "generator.sh" script,
which executes the whole generation process for different months.

NOTE: All files, both input and output, for a specific month are indicated
using the format: {FILENAME}{YEAR}{MONTH}.{EXTENSION}

In order for S-BITE to properly work, the user has to specify the following
input parameters:

  • The centrum size $ncentrum and left endpoint of the uniform vertical links distribution $kvert.
    These parameters are invariant during the analyzed timespan and set to $ncentrum=60 and $kvert=48.

  • The density curve. We give density curves for three months inside folder 'dens_curve'

  • The size of the core $ncore , and of the whole Internet's graph $ntot.
  • The exponent $lambda for the core preferences.

The output of the generator is both the topology of the core, and that of
the whole Internet.

Example:
You can run the generation for months january 2007, june 2009 and december 2011
by just running: ./generator.sh.
The generated cores are inside files 'core_$year_$month.txt',
and internet topologies are inside file 'topo_$year_$month.txt'

Refer to the specific program files for more informations

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