diff options
| author | Ben Pfaff <blp@nicira.com> | 2011-06-07 09:40:53 -0700 |
|---|---|---|
| committer | Ben Pfaff <blp@nicira.com> | 2011-06-07 09:40:53 -0700 |
| commit | 045b2e5c77d02cd0d7bba046e2dbed72ec4828c8 (patch) | |
| tree | 8110e620c0dbe59cd6375a9a32d0b3612ac90843 /tests/test-openflowd.8.in | |
| parent | d3db2ef1f501cdbbf136de35e77a72e9b4970ece (diff) | |
| download | openvswitch-045b2e5c77d02cd0d7bba046e2dbed72ec4828c8.tar.gz | |
ovs-openflowd: Rename test-openflowd and move to "tests" directory.
Too many users thought that they needed to run ovs-openflowd at the same
time as ovs-vswitchd. I hope that this change discourages them.
Diffstat (limited to 'tests/test-openflowd.8.in')
| -rw-r--r-- | tests/test-openflowd.8.in | 345 |
1 files changed, 345 insertions, 0 deletions
diff --git a/tests/test-openflowd.8.in b/tests/test-openflowd.8.in new file mode 100644 index 000000000..135ba846e --- /dev/null +++ b/tests/test-openflowd.8.in @@ -0,0 +1,345 @@ +.TH test\-openflowd 8 "March 2009" "Open vSwitch" "Open vSwitch Manual" +.\" This program's name: +.ds PN test\-openflowd +.\" SSL peer program's name: +.ds SN ovs\-controller +. +.SH NAME +test\-openflowd \- OpenFlow switch implementation +. +.SH SYNOPSIS +.B test\-openflowd +[\fIoptions\fR] \fIdatapath\fR \fIcontroller\fR\&... +. +.SH DESCRIPTION +The \fBtest\-openflowd\fR program implements an OpenFlow switch using a +flow-based datapath. \fBtest\-openflowd\fR connects to one or more +OpenFlow controllers over TCP or SSL. +.PP +For a more powerful alternative to \fBtest\-openflowd\fR, see +\fBovs\-vswitchd\fR(8). Do not run both daemons at the same time. +.PP +The mandatory \fIdatapath\fR argument argument specifies the local +datapath to relay. It takes the form [\fItype\fB@\fR]\fIname\fR, +where \fIname\fR is the network device associated with the datapath's +local port. If \fItype\fR is given, it specifies the datapath +provider of \fIname\fR, otherwise the default provider \fBsystem\fR is +assumed. +. +.PP +The optional \fIcontroller\fR arguments specify how to connect to the +OpenFlow controller or controllers. Each takes one of the following +forms: +. +.so lib/vconn-active.man +.IP "\fBnone\fR" +Run without actively maintaining a connection to a remote OpenFlow +controller. (See the \fB\-\-listen\fR option, under \fBNetworking +Options\fR below, for another way to make OpenFlow connections to the +switch.) +. +.PP +When multiple controllers are configured, \fBtest\-openflowd\fR +connects to all of them simultaneously. OpenFlow 1.0 does not specify +how multiple controllers coordinate in interacting with a single +switch, so more than one controller should be specified only if the +controllers are themselves designed to coordinate with each other. +(The Nicira-defined \fBNXT_ROLE\fR OpenFlow vendor extension may be +useful for this.) +. +.SS "Contacting Controllers" +The OpenFlow switch must be able to contact the OpenFlow controllers +over the network. It can do so in one of two ways: +. +.IP out-of-band +In this configuration, OpenFlow traffic uses a network separate from +the data traffic that it controls, that is, the switch does not use +any of the network devices added to the datapath with \fBovs\-dpctl +add\-if\fR in its communication with the controller. +.IP +To use \fBtest\-openflowd\fR in a network with out-of-band control, specify +\fB\-\-out\-of\-band\fR on the \fBtest\-openflowd\fR command line. The control +network must be configured separately, before or after \fBtest\-openflowd\fR +is started. +. +.IP in-band +In this configuration, a single network is used for OpenFlow traffic +and other data traffic, that is, the switch contacts the controller +over one of the network devices added to the datapath with \fBovs\-dpctl +add\-if\fR. This configuration is often more convenient than +out-of-band control, because it is not necessary to maintain two +independent networks. +.IP +In-band control is the default for \fBtest\-openflowd\fR, so no special +command-line option is required. + +Specify the location of the +controller on the \fBtest\-openflowd\fR command line as the \fIcontroller\fR +argument. You must also configure the network device for the OpenFlow +``local port'' to allow \fBtest\-openflowd\fR to connect to that controller. +The OpenFlow local port is a virtual network port that \fBtest\-openflowd\fR +bridges to the physical switch ports. The name of the local port for +a given \fIdatapath\fR may be seen by running \fBovs\-dpctl show +\fIdatapath\fR; the local port is listed as port 0 in \fBshow\fR's +output. +. +.IP +Before \fBtest\-openflowd\fR starts, the local port network device is not +bridged to any physical network, so the next step depends on whether +connectivity is required to configure the device's IP address. If the +switch has a static IP address, you may configure its IP address now +with a command such as +.B ifconfig of0 192.168.1.1 +and then invoke \fBtest\-openflowd\fR. +.IP +On the other hand, if the switch does not have a static IP address, +e.g. it obtains its IP address dynamically via DHCP, the DHCP client +will not be able to contact the DHCP server until the OpenFlow switch +has started up. Thus, start \fBtest\-openflowd\fR without configuring +the local port network device, and start the DHCP client afterward. +.RE +. +.SH OPTIONS +.SS "OpenFlow Options" +.TP +\fB\-\-datapath\-id=\fIdpid\fR +Sets \fIdpid\fR, which must consist of exactly 16 hexadecimal digits +and may not be all-zero, +as the datapath ID that the switch will use to identify itself to +OpenFlow controllers. +.IP +If this option is omitted, the default datapath ID is taken from the +Ethernet address of the datapath's local port (which is typically +randomly generated) in the lower 48 bits and zeros in the upper 16. +. +.TP +\fB\-\-mfr\-desc=\fIdesc\fR +Set the description of the switch's manufacturer to \fIdesc\fR, which +may contain up to 255 ASCII characters. +. +.TP +\fB\-\-hw\-desc=\fIdesc\fR +Set the description of the switch's hardware revision to \fIdesc\fR, which +may contain up to 255 ASCII characters. +. +.TP +\fB\-\-sw\-desc=\fIdesc\fR +Set the description of the switch's software revision to \fIdesc\fR, which +may contain up to 255 ASCII characters. +. +.TP +\fB\-\-serial\-desc=\fIdesc\fR +Set the description of the switch's serial number to \fIdesc\fR, which +may contain up to 31 ASCII characters. +. +.TP +\fB\-\-dp\-desc=\fIdesc\fR +Set the description of the datapath to \fIdesc\fR, which may contain up to +255 ASCII characters. Note that this field is intended for debugging +purposes and is not guaranteed to be unique and should not be used as +the primary identifier of the datapath. +. +.SS "Networking Options" +.TP +\fB\-\-datapath\-id=\fIdpid\fR +Sets \fIdpid\fR, which must consist of exactly 16 hexadecimal digits, +as the datapath ID that the switch will use to identify itself to the +OpenFlow controller. +.IP +If this option is omitted, the default datapath ID is taken from the +Ethernet address of the datapath's local port (which is typically +randomly generated) in the lower 48 bits and zeros in the upper 16. +. +.TP +\fB\-\-fail=\fR[\fBstandalone\fR|\fBsecure\fR] +The controller is, ordinarily, responsible for setting up all flows on +the OpenFlow switch. Thus, if the connection to the controller fails, +no new network connections can be set up. If the connection to the +controller stays down long enough, no packets can pass through the +switch at all. +.IP +If this option is set to \fBstandalone\fR (the default), +\fBtest\-openflowd\fR will +take over responsibility for setting up flows in the local datapath +when no message has been received from the controller for three times +the inactivity probe interval (see below), or 45 seconds by default. +In this ``fail open'' mode, \fBtest\-openflowd\fR causes the datapath to act +like an ordinary MAC-learning switch. \fBtest\-openflowd\fR will continue to +retry connection to the controller in the background and, when the +connection succeeds, it discontinues its standalone switching behavior. +.IP +If this option is set to \fBsecure\fR, then \fBtest\-openflowd\fR will not +set up flows on its own when the controller connection fails. +. +.TP +\fB\-\-inactivity\-probe=\fIsecs\fR +When the OpenFlow switch is connected to the controller, the +switch waits for a message to be received from the controller for +\fIsecs\fR seconds before it sends a inactivity probe to the +controller. After sending the inactivity probe, if no response is +received for an additional \fIsecs\fR seconds, the switch +assumes that the connection has been broken and attempts to reconnect. +The default and the minimum value are both 5 seconds. +.IP +When fail-open mode is configured, changing the inactivity probe +interval also changes the interval before entering fail-open mode (see +above). +. +.TP +\fB\-\-max\-idle=\fIsecs\fR|\fBpermanent\fR +Sets \fIsecs\fR as the number of seconds that a flow set up by the +OpenFlow switch will remain in the switch's flow table without any +matching packets being seen. If \fBpermanent\fR is specified, which +is not recommended, flows set up by the switch will never +expire. The default is 15 seconds. +.IP +Most flows are set up by the OpenFlow controller, not by the +switch. This option affects only the following flows, which the +OpenFlow switch sets up itself: +. +.RS +.IP \(bu +When \fB\-\-fail=open\fR is specified, flows set up when the +switch has not been able to contact the controller for the configured +fail-open delay. +. +.IP \(bu +When in-band control is in use, flows set up to bootstrap contacting +the controller (see \fBContacting the Controller\fR, above, for +more information about in-band control). +.RE +. +.IP +As a result, when both \fB\-\-fail=secure\fR and \fB\-\-out\-of\-band\fR are +specified, this option has no effect. +. +.TP +\fB\-\-max\-backoff=\fIsecs\fR +Sets the maximum time between attempts to connect to the controller to +\fIsecs\fR, which must be at least 1. The actual interval between +connection attempts starts at 1 second and doubles on each failing +attempt until it reaches the maximum. The default maximum backoff +time is 8 seconds. +. +.TP +\fB\-l\fR, \fB\-\-listen=\fImethod\fR +By default, the switch listens for OpenFlow management connections on a +Unix domain socket named \fB@RUNDIR@/\fIdatapath\fB.mgmt\fR. This socket +can be used to perform local OpenFlow monitoring and administration with +tools such as \fBovs\-ofctl\fR. +.IP +This option may be used to override the default listener. The \fImethod\fR +must be given as one of the passive OpenFlow connection methods listed +below. This option may be specified multiple times to listen to +multiple connection methods. If a single \fImethod\fR of \fBnone\fR is +used, no listeners will be created. +. +.RS +.so lib/vconn-passive.man +.RE +. +.TP +\fB\-\-snoop=\fImethod\fR +Configures the switch to additionally listen for incoming OpenFlow +connections for controller connection snooping. The \fImethod\fR must +be given as one of the passive OpenFlow connection methods listed +under the \fB\-\-listen\fR option above. This option may be specified +multiple times to listen to multiple connection methods. +.IP +If \fBovs\-ofctl monitor\fR is used to connect to \fImethod\fR specified on +\fB\-\-snoop\fR, it will display all the OpenFlow messages traveling +between the switch and its controller on the primary OpenFlow +connection. This can be useful for debugging switch and controller +problems. +. +.TP +\fB\-\-in\-band\fR, \fB\-\-out\-of\-band\fR +Configures \fBtest\-openflowd\fR to operate in in-band or out-of-band control +mode (see \fBContacting the Controller\fR above). When neither option +is given, the default is in-band control. +. +.TP +\fB\-\-netflow=\fIip\fB:\fIport\fR +Configures the given UDP \fIport\fR on the specified IP \fIip\fR as +a recipient of NetFlow messages for expired flows. The \fIip\fR must +be specified numerically, not as a DNS name. +.IP +This option may be specified multiple times to configure additional +NetFlow collectors. +. +.SS "Rate-Limiting Options" +. +These options configure how the switch applies a ``token bucket'' to +limit the rate at which packets in unknown flows are forwarded to an +OpenFlow controller for flow-setup processing. This feature prevents +a single OpenFlow switch from overwhelming a controller. +. +.TP +\fB\-\-rate\-limit\fR[\fB=\fIrate\fR] +. +Limits the maximum rate at which packets will be forwarded to the +OpenFlow controller to \fIrate\fR packets per second. If \fIrate\fR +is not specified then the default of 1,000 packets per second is used. +.IP +If \fB\-\-rate\-limit\fR is not used, then the switch does not limit the +rate at which packets are forwarded to the controller. +. +.TP +\fB\-\-burst\-limit=\fIburst\fR +. +Sets the maximum number of unused packet credits that the switch will +allow to accumulate during time in which no packets are being +forwarded to the OpenFlow controller to \fIburst\fR (measured in +packets). The default \fIburst\fR is one-quarter of the \fIrate\fR +specified on \fB\-\-rate\-limit\fR. +. +This option takes effect only when \fB\-\-rate\-limit\fR is also specified. +. +.SS "Datapath Options" +. +.IP "\fB\-\-ports=\fIport\fR[\fB,\fIport\fR...]" +Ordinarily, \fBtest\-openflowd\fR expects the administrator to create +the specified \fIdatapath\fR and add ports to it externally with a +utility such as \fBovs\-dpctl\fR. However, the userspace switch +datapath is implemented inside \fBtest\-openflowd\fR itself and does +not (currently) have any external interface for \fBovs\-dpctl\fR to +access. As a stopgap measure, this option specifies one or more ports +to add to the datapath at \fBtest\-openflowd\fR startup time. Multiple +ports may be specified as a comma-separated list or by specifying +\fB\-\-ports\fR multiple times. +.IP +See \fBINSTALL.userspace\fR for more information about userspace +switching. +. +.SS "Daemon Options" +.so lib/daemon.man +. +.SS "Public Key Infrastructure Options" +.so lib/ssl.man +.so lib/ssl-bootstrap.man +. +.SS "Logging Options" +.so lib/vlog.man +.SS "Other Options" +.so lib/unixctl.man +.so lib/common.man +.so lib/leak-checker.man +. +.SH "RUNTIME MANAGEMENT COMMANDS" +\fBovs\-appctl\fR(8) can send commands to a running +\fBtest\-openflowd\fR process. The currently supported commands are +described below. +.SS "TEST\-OPENFLOWD COMMANDS" +These commands are specific to \fBtest\-openflowd\fR. +.IP "\fBexit\fR" +Causes \fBtest\-openflowd\fR to gracefully terminate. +.so ofproto/ofproto-unixctl.man +.so lib/vlog-unixctl.man +. +.SH "SEE ALSO" +. +.BR ovs\-appctl (8), +.BR ovs\-controller (8), +.BR ovs\-dpctl (8), +.BR ovs\-ofctl (8), +.BR ovs\-pki (8) |
