Modify documents to mention hardware table implementation
This commit is contained in:
1 parent
2e38251708
commit
7ef42803c4
2 files changed
+21
-19
No files matched your search
@@ -109,6 +109,13 @@ distribution in the ordinary way using "configure" and "make".
|
|||||||
|
|
||||||
% ./configure CC=gcc-4.2
|
% ./configure CC=gcc-4.2
|
||||||
|
|
||||||
|
If you have hardware that supports accelerated OpenFlow switching
|
||||||
|
and you have obtained a hardware table library for your hardware
|
||||||
|
and extracted it into the OpenFlow reference distribution source
|
||||||
|
tree, then you may also enable building support for the hardware
|
||||||
|
switch table with --enable-hw-lib. For more information, read
|
||||||
|
README.hwtables at the root of the OpenFlow distribution tree.
|
||||||
|
|
||||||
The configure script accepts a number of other options and honors
|
The configure script accepts a number of other options and honors
|
||||||
additional environment variables. For a full list, invoke
|
additional environment variables. For a full list, invoke
|
||||||
configure with the --help option.
|
configure with the --help option.
|
||||||
|
|||||||
+14
-19
@@ -10,35 +10,30 @@ expected to handle any incoming packets that it can on its own. Any
|
|||||||
packets that it cannot handle itself it may pass up to the software
|
packets that it cannot handle itself it may pass up to the software
|
||||||
table implementations.
|
table implementations.
|
||||||
|
|
||||||
Hardware table implementation are built as separate kernel modules
|
Hardware table implementation are provided as a library and built
|
||||||
that may be loaded after the openflow module. At most one hardware
|
in the userspace datapath executable.
|
||||||
table module may be loaded at a time. Only datapaths created after a
|
|
||||||
hardware table module is loaded (and before it is unloaded) will take
|
|
||||||
advantage of hardware switching features.
|
|
||||||
|
|
||||||
Creating a hardware table module is straightforward. Create a
|
Creating a hardware table module is straightforward. Create a
|
||||||
directory in the openflow source tree named datapath/hwtable_NAME,
|
directory in the openflow source tree named hw-lib/NAME,
|
||||||
where NAME identifies the hardware that the module supports. Populate
|
where NAME identifies the hardware that the module supports. Populate
|
||||||
that directory with the C source files that comprise the module, plus
|
that directory with the C source files that comprise the module, plus
|
||||||
a file named Modules.mk that specifies how to build the module. This
|
a file named automake.mk that specifies how to build the module in
|
||||||
distribution includes a "dummy" hardware module that demonstrates how
|
the hw-lib directory. This distribution includes a "skeleton" hardware
|
||||||
this works.
|
library that demonstrates how this works.
|
||||||
|
|
||||||
Even though only one may be loaded at a given time, any number of
|
When you perform 'configure', specify each NAME that identifies a
|
||||||
hardware table modules may be built along with the OpenFlow kernel
|
library to be included on the OpenFlow configure script command as
|
||||||
modules. Specify each NAME that identifies a module to be built on
|
the argument to --enable-hw-lib, e.g.:
|
||||||
the OpenFlow configure script command as the argument to
|
./configure --enable-hw-lib=NAME
|
||||||
--enable-hw-tables, e.g.:
|
|
||||||
./configure --enable-hw-tables=NAME
|
|
||||||
|
|
||||||
Each hardware table module's code is encapsulated in a directory, so
|
Each hardware table library's code is encapsulated in a directory, so
|
||||||
it is easy to separate a hardware table implementation from OpenFlow.
|
it is easy to separate a hardware table implementation from OpenFlow.
|
||||||
Simply package up the contents of the hwtable_NAME directory and
|
Simply package up the contents of the hw-lib/NAME directory and
|
||||||
distribute it for builders to extract into their distribution
|
distribute it for builders to extract into their distribution
|
||||||
directory.
|
directory.
|
||||||
|
|
||||||
Included in this distribution is a dummy hardware table to aid in beginning
|
Included in this distribution is a dummy hardware table to aid in beginning
|
||||||
your own hardware table port, it is located in the datapath/hwtable_dummy
|
your own hardware table port, it is located in the hw-lib/skeleton
|
||||||
folder. Also included is a fully functional NetFPGA hardware table that can run
|
folder. Also included is a fully functional NetFPGA hardware table that can run
|
||||||
as a 1Gbx4 port line-rate OpenFlow switch. Information and instructions for its
|
as a 1Gbx4 port line-rate OpenFlow switch. Information and instructions for its
|
||||||
use can be found in the datapath/hwtable_nf2/README file.
|
use can be found in the hw-lib/nf2/README file.
|
||||||
Reference in new issue
Block a user