79 lines
2.4 KiB
Plaintext
79 lines
2.4 KiB
Plaintext
NetFPGA Hardware Table
|
|
Date - 04/28/09
|
|
----------------------------------------
|
|
|
|
The NetFPGA Hardware Table creates a single software table that contains all
|
|
the flows that are currently held in the NetFPGA card. The card itself splits
|
|
exact match flows into SRAM and wildcard match flows into TCAMs. Currently
|
|
there are 24 usable wildcard flow entries and 32,768 available exact match
|
|
entries.
|
|
|
|
Installation
|
|
----------------------------------------
|
|
|
|
First build OpenFlow ensuring you include the directive to build the
|
|
openflow_netfpga2 hardware table in your configure statement:
|
|
|
|
% ./configure --with-l26=/lib/modules/`uname -r`/build
|
|
--enable-hw-tables=nf2
|
|
|
|
To get debugging output from the NetFPGA hardware table uncomment the following
|
|
line from within <openflow>/datapath/hwtable_nf2/nf2_flowtable.h, then recompile:
|
|
|
|
#define NF2_DEBUG 1
|
|
|
|
For further help regarding building OpenFlow please see the INSTALL file in
|
|
the OpenFlow root directory.
|
|
|
|
Platform support
|
|
----------------
|
|
|
|
OpenFlow v0.8.9 with hwtable_nf2 has been tested on CentOS 5.2(Linux 2.6.18),
|
|
which is the officially supported platform of NetFPGA.
|
|
|
|
Running
|
|
----------------------------------------
|
|
|
|
Use nf2_download to download the openflow_switch.bit file that is located in
|
|
the <openflow>/datapath/hwtable_nf2 folder:
|
|
|
|
% nf2_download <openflow>/datapath/hwtable_nf2/openflow_switch.bit
|
|
|
|
Install the OpenFlow kernel module:
|
|
|
|
% insmod <openflow>/datapath/linux-2.6/openflow_mod.ko
|
|
|
|
Install the NetFPGA Hardware Table kernel module:
|
|
|
|
% insmod <openflow>/datapath/linux-2.6/openflow_netfpga2_mod.ko
|
|
|
|
Create an OpenFlow datapath:
|
|
|
|
% <openflow>/utilities/dpctl adddp nl:0
|
|
|
|
Add the NetFPGA interfaces to the datapath:
|
|
|
|
% <openflow>/utilities/dpctl addif nl:0 nf2c0
|
|
% <openflow>/utilities/dpctl addif nl:0 nf2c1
|
|
% <openflow>/utilities/dpctl addif nl:0 nf2c2
|
|
% <openflow>/utilities/dpctl addif nl:0 nf2c3
|
|
|
|
At this point your OpenFlow switch should be ready to go.
|
|
|
|
Fixed Bug
|
|
----------------------------------------
|
|
* On V.0.8.2, when "source port = wild and action = OFPP_ALL" entry is
|
|
written, it is not correctly written to NetFPGA and packets and bytes
|
|
are not correctly counted.
|
|
|
|
Known Bugs
|
|
----------------------------------------
|
|
* Link status detection is currently not supported.
|
|
* There is currently no support for priority amongst wildcard-match entries.
|
|
|
|
Contact
|
|
-------
|
|
e-mail: info@openflowswitch.org
|
|
www: http://openflowswitch.org/
|
|
|