-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathINSTALL
More file actions
116 lines (100 loc) · 5.26 KB
/
INSTALL
File metadata and controls
116 lines (100 loc) · 5.26 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
Hardware configuration:
+--------------------------------------------------------------+
|--------------------------------------------------------------|
|| ||
|| +----------------------+ Performance tester ||
|| | Configuration script | ALIEN OFLOPS ||
|| +----------------------+ ||
|| ||
|| +-----------+ +-----------------+ +------------------+ ||
|| | Message | | Packet capture/ | | Packet generator | ||
|| | generator | | analyzer | | | ||
|| +--+--------+ +-------+---------+ +-------+----------+ ||
|| | | | ||
|| | +------------+----+-----------+--------------+ ||
|| | | | | | | ||
|| | | | +-----------+---------+----+ | ||
|| | | | | | | | | ||
|| +--+-++--+ +---++-+-+ +-+-++---+ +--+-----+ ||
|| | dev0 | | dev1 | | dev2 | | dev3 | ||
|| | (Eth0) | | (Eth1) | | (Eth2) | | (Eth3) | ||
|| +---+----+ +---+----+ +----+---+ +----+---+ ||
|| | | | | ||
|--------------------------------------------------------------|
+--------------------------------------------------------------+
| | | |
| | | |
control | XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
channel | X | data | | X
| XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
| | | |
| of_portA| of_portB| of_portC|
+---------------------------------------------------------------+
|---------------------------------------------------------------|
|| | | | | ||
|| +---++---+ +---++---+ +--------+ +--------+ ||
|| | sdev0 | | sdev1 | | sdev2 | | sdev3 | ||
|| | (Eth0) | | (Eth1) | | (Eth2) | | (Eth3) | ||
|| +---+----+ +---^----+ +---^----+ +----^---+ ||
|| | | | | ||
|| +-----+ | | | ||
|| | +----------------+---+----------+ ||
|| | | ||
|| +---v---+ +------+-----+ ||
|| | Flow +------------------> Forwarding | ||
|| | Table | +------------+ ||
|| +-------+ ||
|| OpenFlow switch ||
|| ||
|---------------------------------------------------------------|
+---------------------------------------------------------------+
Installation procedure:
$ sudo apt-get install autoconf automake libtool libsnmp-dev libpcap-dev
$ sudo apt-get install libconfig-dev
$ sudo apt-get install snmp snmpd snmp-mibs-dowloader
$ git clone git://gitosis.stanford.edu/oflops.git $ cd oflops
$ git submodule init && git submodule update
$ git clone git:// github.com/fp7-alien/performace_tests
$ git clone git://gitosis.stanford.edu/openflow
$ git checkout -b release/1.0.0 remotes/origin/release/1.0.0 $ cd openflow
$./boot.sh
$ ./configure
$ make && sudo make install
$ cd .. ; sh ./boot.sh ;
/--------- Important ----------/
$ patch configure.ac < ./performance_tests/configure.ac.patch
/----------------------------------/
$./configure --with-openflow-src-dir=<absolute path to openflow branch>;
$ cp ./performance_test/src_main/* ./
$ make && make install
$ cp ./performance_test/test_configruation_file/* ./
#In each directory:
#1. example_modules/openflow_add_flow
#2. example_modules/openflow_mod_flow
#3. example_modules/openflow_packet_in
#4. example_modules/openflow_packet_out
#5. example_modules/openflow_path_delay
# - replace *.c files with corresponding files form PathDir.tar.gz,
# - in each Makefile add following switches to variables:
# CFLAGS -Ic:/gsl
# LDFLAGS -Lc:/gsl
# LIBS -lgsl -lgslcblas
# - and do make .
#In configuration files:
#1. alien-addflow.cfg#
#2. alien-modflow.cfg
#3. alien-pathdelay.cfg
#4. alien-pin.cfg
#5. alien-pout.cfg
#- replace names of ,,control-dev'' and ,,dev'' fields with correct name of network interfaces
#- fill ,,port_num'' fields with correct of_port number
#- fill ,,path'' variable with correct path name of testing module.
#Parameters:
#flows - the number of used flows
#data_rate and probe_rate - in tests should be equal [ Mbps ]
# pkt_size - packet size [bytes]
# table - strict match flow entries (0), wildcards (1)
#probe_time - max duration of test [s]
#echo_rate - echo request rate [s].
#Now, we can start tests:
/usr/local/bin/oflops -i <path-to-config-file>/<test-config-file> -o <path-to-output-file>/<output-file-name>