-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathREADME.ofps
60 lines (42 loc) · 1.7 KB
/
README.ofps
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
###########################################################
# ofps summary
#
ofps[1] is a python implementation of a OpenFlow switch. Unlike
other implementations, it is optimized for ease of readability over
performance. The goal is for the code to closely approximate a
pseudo-code implementation of an OpenFlow switch.
###########################################################
# INSTALL
#
ofps shares libraries with oftest, so oftest MUST be installed
first (see README.oftest). Currently, ofps only runs from the
source directory, but this will hopefully change soon.
###########################################################
# RUN
#
The easiest way to invoke ofps is from the wrapper script run_switch:
cd tests
sudo ./run_switch.py
This script creates veth pairs veth0...veth7 and starts ofps. This is
the default setup that oftest assumes, so to run oftest against ofps,
in another window, run:
cd tests
sudo ./oft
The switch can also be invoked manually on the command line as:
cd src/python/ofps
sudo ./ofps.py
but this command assumes that the interfaces have been brought up ahead of time.
###########################################################
# STATUS
#
ofps is alpha quality code. It is not even a complete switch
implement ion, but we hope that it short order that it will be. ofps is
not recommended for use in production environments, and we expect that
it will perform prohibitively slow. For example, packet lookups and flow
insertion both take linear time as a function of the number flow entries.
We do not wish to improve ofps's efficiency, as that will likely reduce
its readability.
###########################################################
# Footnotes
#
[1] "OpenFlow Python Switch"