huxh10 / SGDX

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

SGRS and SGDX: Preserve Privacy at IXPs

iSDX Installation: Vagrant Setup

Prerequisite

To get started install these softwares on your host machine:

Install Vagrant, VirtualBox, Git, X Server and SSH capable terminal

Basics

  • Clone the iSDX repository from Github:
$ git clone https://github.com/huxh10/iSDX.git
  • Now run the vagrant up command. This will read the Vagrantfile from the current directory and provision the VM accordingly:
$ vagrant up

The provisioning scripts will install all the required software (and their dependencies) to run the SDX demo. Specifically it will install:

SGX Installation

Install and setup Intel SGX driver and SDK.

To run the system in hardware mode, CPU should be SkyLake or later version.

Directory Structure

The top level directories are:

  • pure iSDX source code:
    • xrs - BGP Relay component (route server)
    • pctrl-isdx - iSDX original Participant Controller component
    • arproxy - ARP Relay component
    • xctrl - Central Controller component (runs at startup to load initial switch rules)
    • flanc - Fabric Manager component (a.k.a. 'refmon')
    • util - Common code
    • test - Test Framework and example tests
    • visualization - Tools for visualizing iSDX flows
    • setup - Scripts run from the Vagrantfile when the VM is created
    • bin - Utility scripts
  • privacy-preserving source code:
    • sxrs - SGRS
    • pprs - SIXPACK
    • aby - ABY library and core functions for SIXPACK
    • xbgp - BGP update generator
    • pctrl-sgdx - Modified iSDX Participant Controller component for SGDX
    • plot - Scripts to plot the results
  • test datasets
    • examples - Working examples with datasets and related generator

Usage

Run the different setups provided in the examples directory.

To try original iSDX, check out the test-ms example for a simple case with three IXP participants.

To run the comparison experiments of SGRS and SIXPACK, check out the test-rs example for generating datasets. Run scripts in sxrs and pprs.

To run the comparison experiments of SGDX and iSDX, check out the test-sdx example for generating datasets. Run scripts in pctrl-sgdx and pctrl-isdx.

About

License:Apache License 2.0


Languages

Language:Assembly 37.8%Language:C++ 21.0%Language:C 17.3%Language:Roff 12.4%Language:Python 5.1%Language:JavaScript 3.2%Language:CSS 1.2%Language:PLpgSQL 0.5%Language:Smarty 0.5%Language:Batchfile 0.3%Language:Shell 0.2%Language:Makefile 0.2%Language:HTML 0.1%Language:PHP 0.1%Language:Vim Script 0.1%Language:Perl 0.1%Language:Objective-C 0.0%Language:AGS Script 0.0%Language:Jolie 0.0%