X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=utilities%2Fdpctl.8;h=4c863e5592291e374a67117815954071bd0fdb85;hb=9c1b16772cfd8d346be89963ddf6a6d6a87f0cc9;hp=043ff143e449ccb9292077d0845827edec1a05bd;hpb=1b6df17a65624f5491872de5a8683b76c4420895;p=sliver-openvswitch.git diff --git a/utilities/dpctl.8 b/utilities/dpctl.8 index 043ff143e..4c863e559 100644 --- a/utilities/dpctl.8 +++ b/utilities/dpctl.8 @@ -37,10 +37,14 @@ The specified SSL \fIport\fR (default: 976) on the given remote The specified TCP \fIport\fR (default: 975) on the given remote \fIhost\fR. +.TP +\fBunix:\fIfile\fR +The Unix domain server socket named \fIfile\fR. + .SH COMMANDS With the \fBdpctl\fR program, datapaths running in the kernel can be -created, deleted, modified, and monitored. A single machine may +created, deleted, and modified. A single machine may host up to 32 datapaths (numbered 0 to 31). In most situations, a machine hosts only one datapath. @@ -66,8 +70,8 @@ explicitly removed before the datapath can be deleted (see \fBdelif\fR command). .TP -\fBaddif nl:\fIdp_idx netdev\fR -Adds \fInetdev\fR to the list of network devices datapath +\fBaddif nl:\fIdp_idx netdev\fR... +Adds each \fInetdev\fR to the list of network devices datapath \fIdp_idx\fR monitors, where \fIdp_idx\fR is the ID of an existing datapath, and \fInetdev\fR is the name of one of the host's network devices, e.g. \fBeth0\fR. Once a network device has been added @@ -75,16 +79,10 @@ to a datapath, the datapath has complete ownership of the network device's traffic and the network device appears silent to the rest of the system. .TP -\fBdelif nl:\fIdp_idx netdev\fR -Removes \fInetdev\fR from the list of network devices datapath +\fBdelif nl:\fIdp_idx netdev\fR... +Removes each \fInetdev\fR from the list of network devices datapath \fIdp_idx\fR monitors. -.TP -\fBmonitor nl:\fIdp_idx\fR -Prints to the console all OpenFlow packets sent by datapath -\fIdp_idx\fR to its controller, where \fIdp_idx\fR is the ID of an -existing datapath. - .PP The following commands can be apply to OpenFlow switches regardless of the connection method. @@ -94,6 +92,20 @@ the connection method. Prints to the console information on datapath \fIswitch\fR including information on its flow tables and ports. +.TP +\fBstatus \fIswitch\fR [\fIkey\fR] +Prints to the console a series of key-value pairs that report the +status of \fIswitch\fR. If \fIkey\fR is specified, only the key-value +pairs whose key names begin with \fIkey\fR are printed. If \fIkey\fR is +omitted, all key-value pairs are printed. + +(In the OpenFlow reference implementation, the \fBstatus\fR command is +implemented in \fBsecchan\fR(8), not in the kernel module, so the +\fBnl:\fIdp_idx\fR connection method should not be used with this +command. Instead, specify \fB-l\fR or \fB--listen\fR on the +\fBsecchan\fR command line and tell \fBdpctl\fR to use the connection +method specified there.) + .TP \fBdump-tables \fIswitch\fR Prints to the console statistics for each of the flow tables used by @@ -104,6 +116,33 @@ datapath \fIswitch\fR. Prints to the console statistics for each of the network devices associated with datapath \fIswitch\fR. +.TP +\fBmod-port \fIswitch\fR \fInetdev\fR \fIaction\fR +Modify characteristics of an interface monitored by \fIswitch\fR. +\fInetdev\fR can be referred to by its OpenFlow assigned port number or +the device name, e.g. \fBeth0\fR. The \fIaction\fR may be any one of the +following: + +.RS +.IP \fBup\fR +Enables the interface. This is equivalent to ``ifconfig up'' on a Unix +system. + +.IP \fBdown\fR +Disables the interface. This is equivalent to ``ifconfig down'' on a Unix +system. + +.IP \fBflood\fR +When a \fIflood\fR action is specified, traffic will be sent out this +interface. This is the default posture for monitored ports. + +.IP \fBnoflood\fR +When a \fIflood\fR action is specified, traffic will not be sent out +this interface. This is primarily useful to prevent loops when a +spanning tree protocol is not in use. + +.RE + .TP \fBdump-flows \fIswitch \fR[\fIflows\fR] Prints to the console all flow entries in datapath \fIswitch\fR's @@ -137,6 +176,19 @@ Deletes entries from the datapath \fIswitch\fR's tables that match tables are removed. See \fBFLOW SYNTAX\fR, below, for the syntax of \fIflows\fR. +.TP +\fBmonitor \fIswitch\fR +Connects to \fIswitch\fR and prints to the console all OpenFlow +messages received. Usually, \fIswitch\fR should specify a connection +named on \fBsecchan\fR(8)'s \fB-m\fR or \fB--monitor\fR command line +option, in which the messages printed will be all those sent or +received by \fBsecchan\fR to or from the kernel datapath module. A +\fIswitch\fR of the form \fBnl:\fIdp_idx\fR will print all +asynchronously generated OpenFlow messages (such as packet-in +messages), but it will not print any messages sent to the kernel by +\fBsecchan\fR and other processes, nor will it print replies sent by +the kernel in response to those messages. + .PP The following commands can be used regardless of the connection method. They apply to OpenFlow switches and controllers. @@ -201,12 +253,15 @@ specified as a integer between 0 and 65535, inclusive, either in decimal or as a hexadecimal number prefixed by \fB0x\fR, e.g. \fB0x0806\fR to match ARP packets. -.IP \fBnw_src=\fIip\fR +.IP \fBnw_src=\fIip\fR[\fB/\fInetmask\fR] Matches IPv4 source address \fIip\fR, which should be specified as an IP address or host name, e.g. \fB192.168.1.1\fR or -\fBwww.example.com\fR. +\fBwww.example.com\fR. The optional \fInetmask\fR allows matching +only on an IPv4 address prefix. It may be specified as a dotted quad +(e.g. \fB192.168.1.0/255.255.255.0\fR) or as a count of bits +(e.g. \fB192.168.1.0/24\fR). -.IP \fBnw_dst=\fInw_dst\fR +.IP \fBnw_dst=\fIip\fR[\fB/\fInetmask\fR] Matches IPv4 destination address \fIip\fR. .IP \fBnw_proto=\fIproto\fR @@ -222,6 +277,24 @@ packets originating from a HTTP server. .IP \fBtp_dst=\fIport\fR Matches UDP or TCP destination port \fIport\fR. +.PP +The following shorthand notations are also available: + +.IP \fBip\fR +Same as \fBdl_type=0x0800\fR. + +.IP \fBicmp\fR +Same as \fBdl_type=0x0800,nw_proto=1\fR. + +.IP \fBtcp\fR +Same as \fBdl_type=0x0800,nw_proto=6\fR. + +.IP \fBudp\fR +Same as \fBdl_type=0x0800,nw_proto=17\fR. + +.IP \fBarp\fR +Same as \fBdl_type=0x0806\fR. + .PP The \fBadd-flow\fR and \fBadd-flows\fR commands require an additional field: @@ -273,14 +346,29 @@ implemented by all OpenFlow switches.) not yet expose to the user.) .PP -The \fBadd-flows\fR and \fBdel-flows\fR commands support an additional -optional field: +The \fBadd-flow\fR, \fBadd-flows\fR, and \fBdel-flows\fR commands +support an additional optional field: .IP \fBpriority=\fIvalue\fR Sets the priority of the flow to be added or deleted to \fIvalue\fR, which should be a number between 0 and 65535, inclusive. If this field is not specified, it defaults to 32768. +.PP +The \fBadd-flow\fR and \fBadd-flows\fR commands support additional +optional fields: + +.TP +\fBidle_timeout=\fIseconds\fR +Causes the flow to expire after the given number of seconds of +inactivity. A value of 0 prevents a flow from expiring due to +inactivity. The default is 60 seconds. + +.IP \fBhard_timeout=\fIseconds\fR +Causes the flow to expire after the given number of seconds, +regardless of activity. A value of 0 (the default) gives the flow no +hard expiration deadline. + .PP The \fBdump-flows\fR and \fBdump-aggregate\fR commands support an additional optional field: