Dell Networking Operating System for OpenFlow on N-Series (DNOS-OF) User Guide v1.1b Dell Networking Engineering (Campus) June 2016 ©2016 Dell Inc., All rights reserved. Except as stated below, no part of this document may be reproduced, distributed or transmitted in any form or by any means, without express permission of Dell. You may distribute this document within your company or organization only, without alteration of its contents.
CAUTION: A CAUTION indicates either potential damage to hardware or loss of data and tells you how to avoid the problem. WARNING: A WARNING indicates a potential for property damage, personal injury, or death. 2015–03, Rev.
Table of contents 1 2 3 4 Executive summary – DNOS-OF............................................................................................................................................ 7 1.1 DNOS-OF Overview ....................................................................................................................................................... 7 1.2 About This Document ..............................................................................................................
.3.2.6.1 Match Criteria, Instructions, Actions/Action List/Action Set, Counters, Flow Expiry ........... 26 4.3.2.7 Policy ACL Flow Table ..................................................................................................................... 28 4.3.2.7.1 4.4 Match Criteria, Instructions, Actions/Action List/Action Set, Counters, Flow Expiry ........... 28 Group Table ...........................................................................................................................
4.4.9 DNOS-OF L3 ECMP Group Entries ............................................................................................................................ 42 4.4.9.1 Naming Convention ........................................................................................................................ 43 4.4.9.2 Action Buckets.............................................................................................................................. 43 4.4.9.3 Counters .........................
5.6.3.2 set default logging level .............................................................................................................. 74 5.6.4 Syslog Configuration .................................................................................................................................................... 74 5.7 Switch Configuration Storage..................................................................................................................................... 74 5.7.
1 Executive summary – DNOS-OF SDN and OpenFlow is fast becoming a requirement in campus networking products due to the perceived strategic value of SDN and the high perceived cost of proprietary legacy network gear. DNOS-OF is a campus networking product based on existing N Series hardware and a custom firmware image. 1.1 DNOS-OF Overview DNOS-OF is a web downloadable firmware image available for the Dell Networking N-Series hardware that enables OpenFlow 1.3.4 support as a pure OpenFlow switch.
2 User Guide 2.1 Embedded Management (CLI/GUI) There is a CLI provided by the DNOS-OF platform that is accessible from the serial port, telnet, and SSH. There is currently no other management access, however a GUI is planned for release with DNOS-OF 1.1. The CLI reference is also included in an appendix at the end of this document. 2.2 Supported Hardware The DNOS-OF firmware is supported on the following N-Series platforms as of release 1.1: – – – – – – – – – – – – – – – – 2.
Except for minimal system internal and OpenFlow packet debugging, logging and output to the serial console, only remote logging via SysLog is currently supported so as not to impact existing N Series code.
3 Product Features – SDN/OpenFlow and DNOS-OF 3.1 Overview – What is SDN? Software-Defined Networking (SDN) is a networking architecture that is dynamic, manageable, and adaptable, making it useful for high-bandwidth applications. This architecture decouples the network control and data plane forwarding functions, enabling the network control to become directly programmable and the underlying infrastructure to be abstracted for applications and network services.
3.3 Overview – What is DNOS-OF? As a product line, the Dell Networking Operating System – for OpenFlow, DNOS-OF is a firmware bundle that allows a traditional N series switch to be used as a pure OpenFlow switch. DNOS-OF is designed to 1. Deliver a pure OpenFlow switch for the N series 2. Enable SDN in campus networks 3. Interoperate with any controller supporting OpenFlow 1.3.4 and multiple table support, as well as with the NEC PF6800 PFC cluster controller.
4 Product Details 4.1 SDN and the OpenFlow Architecture 4.1.1 SDN/OpenFlow High Level Architectural Components At the core of the OpenFlow specifications is the definition of an abstract packet processing machine, called a switch. The switch processes packets using a combination of packet contents and switch configuration state. A protocol is defined for manipulating the switch's configuration state as well as receiving certain switch events.
4.2 DNOS-OF Product Details 4.2.1 High Level Architecture The network OS portion of DNOS-OF consists of minified Debian Linux kernel with a BusyBox distribution for the main underlying core of the platform operating environment. There is some additional kernel framework consisting of the kernel mode interface BDE drivers provided by the switch SDK. There are also user mode drivers for all of the target platform hardware, which together makes up the Board Support Package (BSP).
4.2.2 Indigo Indigo is an open source Big Switch Networks provided north bound OpenFlow API layer which has been tied into the OF-DPA libraries and consequently into the switch application. It handles communications from the OpenFlow controller to the OpenFlow agent in the DNOS-OF switch. 4.2.
4.3 OpenFlow Multi Table Programming supported by DNOS-OF 4.3.1 Bridging and Routing Functions Figure 2. Abstract switch Objects Used for Bridging and Routing The DNOS-OF Abstract Switch objects that can be programmed for bridging and routing in multi table mode are shown in Figure 2. Multi table mode exposes the tables highlighted and shown above to support direct flow table programming access to controllers that can address multiple flow tables.
or written by the controller. The MAC Learning Flow Table has a “virtual” table number which is reported to the Controller in a table miss Packet-In message. It does not appear as part of the pipeline since its table number assignment would violate the OpenFlow requirement for packets to traverse tables in monotonically increasing order. The ACL Policy Flow Table can perform multi-field wildcard matches, analogous to the function of an ACL in a conventional switch.
4.3.2.1 Ingress Port Flow Table The Ingress Port Flow Table is the first table in the pipeline and, by convention, is numbered zero. OpenFlow uses a 32 bit value for ifNums. In this version of DNOS-OF, the high order 16 bits are zero for physical ports since no other port types are supported in 1.0. The Ingress Port Flow Table presents what is essentially a de-multiplexing logic function as an OpenFlow table that can be programmed from the controller.
4.3.2.2 VLAN Flow Table The VLAN Flow Table is used for IEEE 801.Q VLAN assignment and filtering to specify how VLANs are to be handled on a particular port. All packets must have an associated VLAN id in order to be processed by subsequent tables. Packets that do not match any entry in the VLAN table are filtered, that is, dropped by default. Note that IEEE defined BPDUs are always received untagged. The VLAN Flow Table can optionally assign a nonzero VRF value to the packet based on the VLAN.
Note: The untagged packet rule applies to both untagged packets, which match VLAN_VID = 0x1000, and IEEE 802.1P priority tagged packets, which match VLAN_VID = 0x0000. However the VLAN-PCP match field will be set from the value in a priority VLAN tag rather than default to zero in the case of a packet without a VLAN tag. Note: A VLAN Flow Table rule cannot specify an IN_PORT and VLAN_VID combination that is used in a VXLAN Access Logical Port configuration.
4.3.2.3 Termination MAC Flow Table The Termination MAC Flow Table determines whether to do bridging or routing on a packet. It identifies destination MAC, VLAN, and Ethertype for routed packets. Routed packet rule types use a goto instruction to indicate that the next table is one of the routing tables. The default on a miss is to go to the Bridging Flow Table. 4.3.2.3.
The Termination MAC Flow Table can have the instructions shown in Table 14. Name Argumen t Description Goto-Table TUnicast MAC rules with multicast IPV4_DST or IPV6-DST should specify athe Multicast Routing Flow Table, otherwise they can only specify the bUnicast Routing Flow Table. Multicast MAC rules can only specify the lMulticast Routing Flow Table. The packet is dropped if the rule matches eand there is no Goto-Table instruction. Apply Actions AOptional.
4.3.2.4 Bridging Flow Table The Bridging Flow Table supports Ethernet packet switching for potentially large numbers of flow entries using the hardware L2 tables. The default on a miss is to go to the Policy ACL Flow Table. Note: The Policy ACL Flow Table is preferred for matching BPDUs. The Bridging Flow Table forwards based on VLAN (normal switched packets) using the flow entry types in Table 17.
The Bridging Flow Table supports the actions in Table 20 by flow entry type. The DNOS-OF API validates consistency of flow entry type and DNOS-OF group entry type references. Table 20: Bridging Flow Table Actions by Flow Entry Type Type Unicast VLAN Bridging Multicast VLAN Bridging DLF VLAN Bridging Argument Group ID Description Must be a DNOS_OF L2 Interface group entry for the forwarding VLAN. Group ID Must be a DNOS_OF L2 Multicast group entry for the forwarding VLAN.
4.3.2.5 Unicast Routing Flow Table The Unicast Routing Flow Table supports routing for potentially large numbers of IPv4 and IPv6 flow entries using the hardware L3 tables. The Unicast Routing Flow Table is a single table organized as two mutually exclusive logical subtables by IP protocol, and supports flow entry types listed in Table 23. One table number is used for both logical tables. Table 23.
Other instruction types, specifically Apply Actions, are not supported. Table 27: Unicast Routing Flow Table Actions Name Group Decrement TTL and do MTU check Argument Group ID - Description Must be a DNOS-OF L3 Unicast Group Entry. MTU check is a vendor extension. An invalid TTL (zero before or after decrement) is always dropped and a copy sent to the CPU for forwarding to the CONTROLLER. Similarly, a packet that exceeds the MTU is dropped and a copy sent to the CONTROLLER. Required.
4.3.2.6 Multicast Routing Flow Table The Multicast Routing Flow Table supports routing for IPv4 and IPv6 multicast packets. The Multicast Routing Flow Table is also organized as two mutually exclusive logical sub tables by IP protocol, and supports the flow entry types listed in Table 30. 4.3.2.6.1 Match Criteria, Instructions, Actions/Action List/Action Set, Counters, Flow Expiry Match fields for flow entry types are described in the following tables. Table 31.
Table 33: Multicast Routing Flow Table Instructions Name Write Actions Argument Action set GotoTable Table Description Only the actions in Table 34 can be specified. Must be the Policy ACL Flow Table. In the event that there is no group entry referenced and no next table specified, the packet will be dropped. Other instruction types, specifically Apply Actions, are not supported.
4.3.2.7 Policy ACL Flow Table The Policy ACL Flow Table supports wide, multi-field matching. Most fields can be wildcard matched, and explicit priority must be included in all flow entry modification. This is the preferred table for matching BPDU and ARP packets. It is also the only table where QoS actions are available. The Policy ACL Flow Table is organized as mutually exclusive logical sub tables. Flow entries in the IPv6 logical tables match only IPv6 packets by VLAN ID.
IP_DSCP 6 No Yes IP_ECN 2 No Yes TCP_SRC UDP_SRC SCTP_SRC ICMPV4_TYPE TCP_DST UDP_DST SCTP_DST ICMPv4_CODE 16 16 16 8 16 16 16 8 No No No No No No No No Yes Yes Yes Yes Yes Yes Yes Yes Bits 0 through 5 of the IP ToS Field as defined in RFC 2474 if Ethertype = 0x0800 Bits 6 through 7 of the IP ToS Field as defined in RFC 3168 if Ethertype = 0x0800 If Ethertype = 0x0800 and IP_PROTO = 6 f Ethertype = 0x0800 and IP_PROTO = 17 If Ethertype = 0x0800 and IP_PROTO = 132 If Ethertype = 0x0800 and IP_PRO
UDP_DST 16 No Yes SCTP_DST 16 No Yes ICMPv6_CODE 8 No Yes If Ethertype = 0x86dd and IP_PROTO = 17 If Ethertype = 0x86dd and IP_PROTO = 132 If Ethertype = 0x86dd and IP_PROTO = 58 Notes: IPv6 Neighbor Discovery field matching is not supported in this version of DNOS-OF. Not all IPv6 match fields are supported on all platforms. DNOS-OF permits bit masking L4 source and destination ports, as well as ICMP code. The OpenFlow does not require these to be maskable.
As with Unicast and Multicast Routing Flow Table actions, the decrement TTL and MTU checks are encoded by referencing an L3 Unicast or Multicast group entry. Note that if the group entry type is L2 Interface. L2 Rewrite, or L2 Multicast then these checks will not be done. The Policy ACL Flow Table counters are listed in Table 43. These are applicable to VLAN flow entries. Policy ACL Flow Table expiry provisions are shown in Table 44. Each flow entry can have its own time-out values.
4.4 Group Table Most forwarding actions are embodied in group table entries. DNOS-OF supports a defined set of group table entry types, effectively partitioning the group table into logical sub tables. Each group entry has an identifier, type, counters, and one or more action buckets. OpenFlow has a single monolithic group table, but DNOS-OF differentiates among types of group entries. For this purpose, DNOSOF encodes the group entry type in a group entry identifier field.
4.4.1 DNOS-OF flow tables DNOS-OF flow tables accommodate specific types of flow entries with associated semantic rules, including constraints such as which match fields are available, which instructions and actions are supported, how priorities can be assigned to flow entries, which next table(s) flow entries can go to, and so forth. The flow tables conform to the OpenFlow 1.3.4 specification.
4.4.2.1 Naming Convention Table 46 details the DNOS-OF L2 Interface group entry identifier subfields that encode combinations of egress port and VLAN ID. 4.4.2.2 Action Buckets The single action bucket specifies the output port, and whether or not the packet is egressed tagged. Although the pop action is a NOP if the packet has no VLAN tag, packets should always have a VLAN tag when the actions in the output group table are applied.
4.4.3 DNOS-OF L2 Rewrite Group Entries DNOS-OF L2 Rewrite group entries are of indirect type and have a single action bucket. They are used when it is desired to modify Ethernet header fields for bridged packets. Use of a DNOS-OF L2 Rewrite group entry is optional, and can only be a Policy ACL Flow Table action. DNOS-OF L2 Rewrite actions are optional with the exception of group. This permits a DNOS-OF L2 Rewrite group entry to selectively modify the source MAC, destination MAC, and/or VLAN ID.
4.4.4 DNOS-OF L3 Unicast Group Entries DNOS-OF L3 Unicast group entries are used to supply the routing next hop and output interface for packet forwarding. To properly route a packet from either the Routing Flow Table or the Policy ACL Flow Table, the forwarding flow entry must reference a DNOS-OF L3 Unicast Group entry. DNOS-OF L3 Unicast automatically includes the ALLOW-IN_PORT vendor extension property to allow packets to be sent out IN_PORT.
Set Field 4.4.4.3 VLAN-id Write the VLAN id corresponding to the L3 output interface. Required. Counters The DNOS-OF L3 Unicast group entry counters are as shown in Table 54. 4.4.5 DNOS-OF L2 Multicast Group Entries DNOS-OF L2 multicast group entries are of OpenFlow ALL type. There can be multiple action buckets, each referencing an output port by chaining to a DNOS-OF L2 Interface Group entry. Note: By OpenFlow default, a packet cannot be forwarded back to the IN_PORT from which it came in.
4.4.5.3 Counters The L2 Multicast group entry counters are as shown in Table 57. 4.4.6 DNOS-OF L2 Flood Group Entries The OF-DPA L2 Flood Group entries are used by VLAN Flow Table wildcard (destination location forwarding, or DLF) rules. Like OF-DPA L2 Multicast group entry types they are of OpenFlow ALL type. The action buckets each encode an output port. Each OF-DPA L2 Flood Group entry bucket forwards a replica to an output port, except for packet IN_PORT.
4.4.6.2 Action Buckets The contents of the DNOS-OF L2 Flood Group Entry action buckets can contain only the values shown in Table 59. 4.4.6.3 Counters The DNOS-OF L2 Multicast group entry counters are as shown in Table 60. 4.4.7 DNOS-OF L3 Interface Group Entries DNOS-OF L3 interface group entries are of indirect type and have a single action bucket. They are used to supply outgoing routing interface properties for multicast forwarding.
4.4.7.1 Naming Convention Table 61 details the DNOS-OF L3 Interface group entry identifier subfields. 4.4.7.2 Action Buckets The single action bucket specifies the MAC_SRC, VLAN_VID, TTL decrement action, and an output group for forwarding the packet. All actions are required. Table 62: DNOS-OF L3 Interface Group Entry Bucket Actions Field Group Argument Group entry Set Field Set Field MAC_SRC Description Must chain to a L2 Interface group entry. This group entry can output the packet to IN_PORT.
4.4.8 DNOS-OF L3 Multicast Group Entries DNOS-OF L3 Multicast group entries are of OpenFlow all type. The action buckets describe the interfaces to which multicast packet replicas are forwarded. IP multicast packets are forwarded differently, depending on whether they are switched or routed. Packets must be switched in the VLAN in which they came in and cannot be output to IN_PORT. Packets that are multicast in other VLANs must be routed and must be allowed to egress via IN_PORT.
4.4.8.1 Naming Convention The naming convention for DNOS-OF L3 Multicast Group entries is shown in Table 64. 4.4.8.2 Naming Convention The action buckets contain the values shown in Table 65. Table 65: DNOS-OF L3 Multicast Bucket Actions Field Group 4.4.8.1 Argument Group-id Description Can chain to one of: L3 Interface; L2 Interface. Chained group entry names must conform to the VLAN id requirements above. Counters The DNOS-OF L3 Multicast group entry counters are as shown in Table 66. 4.4.
4.4.9.1 Naming Convention The naming convention for DNOS-OF L3 ECMP Group entries is as shown in Table 67. Table 67: DNOS-OF L3 ECMP Group Entry Naming Convention 4.4.9.2 Field Id Bits [27:0] Type [31:28] Description Used to differentiate OF-DPA L3 ECMP group entries. 7 (OF-DPA L3 ECMP) Action Buckets The action buckets contain the single value listed in Table 68. Table 68. DNOS-OF L3 ECMP Group Entry Bucket Actions Field Group 4.4.9.
4.4.12 Ports This section lists the DNOS-OF supported properties for physical and reserved ports. 4.4.12.1 Physical Ports DNOS-OF supports physical ports that are available on specific target platforms. Ports are identified using a 32-bit ifNum value. The most significant two bytes indicate the type of port. Only physical ports are supported in DNOS-OF. Physical ports are front panel ports on the abstract switch. DNOS-OF supports the physical port features listed in Table 73.
4.4.12.2 Counters DNOS-OF supports the port counters listed in Table 75.
4.4.12.3 Reserved Ports DNOS-OF supports the reserved ports listed in Table 76. Table 76. DNOS-OF Reserved Ports Name ALL Required Yes IN_PORT Yes CONTROLLER Yes TABLE Yes ANY LOCAL Yes No NORMAL FLOOD No No Description Required but not supported in DNOS-OF. Used to send packets to the ingress port to override OpenFlow default behavior. DNOS-OF uses group ALLOW-IN_PORT property instead. Not to be confused with the IN_PORT match field. The OpenFlow controller.
4.4.13 Vendor Extension Features In many cases the vendor extension features only affect the OpenFlow abstract switch and can be accommodated by the existing OpenFlow 1.3.4 protocol. In others, an OpenFlow 1.3.4 agent and compatible controller can be extended using the OpenFlow Experimental facility to add new protocol elements as needed. DNOS-OF provides vendor extensions for source MAC learning, and L3 forwarding IN_PORT control. 4.4.13.
4.5 OpenFlow Single Table Programming Supported by DNOS-OF (NEC PF6800 PFC Cluster Controller compatibility mode) 4.5.1 Bridging and Routing Functions in NEC While the same set of tables shown above that are used and exposed in OF-DPA exist in single table NEC mode, only a single table is exposed to the NEC PF6800 controller. For DNOS-OF 1.1, only NEC OF1.3+ mode is supported. Support for the recently released NEC OEF multi table mode is planned for a later release of DNOS-OF. In NEC OF1.
The following is a sample physical topology showing some of the components in the PF6800 PFC cluster controller. There are 4 separate networks used in the PF6800 cluster controller, as shown below in these extracts from the NEC PFC installation guide.
The virtual components of the PFC network are shown below. The virtual router, virtual bridges and endpoints are controlled by the application programmer, while the actual OpenFlow flow table programming of match criteria, instructions and actions are handled by the controller. This transparency to the application programmer is a large part of what adds value to the NEC PF6800 PFC cluster controller.
Below are some examples showing the PF6800 web application GUI used in testing the PFC controller. The first one shows a simple Layer 2 construct, a virtual bridge (vBridge), with 2 external traffic sources showing end to end traffic running through the switch.
The vBridge is combined with external data sources (vExternal connections to vInterfaces, as shown below) in order to drive data across the virtual switch (vBridge). The vInterface definition screen is shown below.
vBridges and vInterface data sources can be combined into Layer 3 vRouter constructs as shown in the examples below.
These examples are only shown here for reference. For full documentation and detail on working with the PFC controller see the NEC documentation and manuals.
5 Installation, Configuration, Deployment Since the target delivery mechanism is the web download, the only thing needed other than the actual N series switch is the DNOS-OF .STK firmware image file. This section shows how it is downloaded, configured and started. This firmware image file is identical to the standard N Series firmware image file format and is loaded and enabled the same way. The user can switch back and forth between the standard N-Series image .STK file and the DNOS-OF .
5.2 Install DNOS-OF To install from a TFTP server, copy the DNOS-OF image to the download directory of your TFTP server, then from the terminal or serial console of the switch use the “copy” command as shown below. This example puts the firmware into the backup partition on the switch: ZBA123_console> copy tftp:///DNOS-OF-xx.yy.zz.bb.
You can also see the management configuration information that is stored in the switch configuration and shown in the running configuration: "Management Interface": { "dhcp": false, "ip address": "172.25.11.94/27", "ip gateway": "172.25.11.254" }, "SSH Service": { "enabled": false }, "Telnet Service": { "enabled": true } 5.
4TBK0Z1_console> set openflow retryinterval 5 OpenFlow controller connection retry intreval set to 5 seconds 4TBK0Z1_console> set openflow echo interval 5 OpenFlow echo interval set to 5 4TBK0Z1_console> set openflow echo timeout 5 OpenFlow echo timeout set to 5 4TBK0Z1_console> set openflow reset echo count 3 OpenFlow reset echo count set to 3 3) Create and set up the OpenFlow controller communication settings 4TBK0Z1_console> set openflow controller name test Controller test (index 0) created 4TBK0Z1_con
HA features Connection Retry Interval (seconds) Connection Max Retries Connection Echo Interval (seconds) Connection Echo Timeout (seconds) Connection Reset Echo Count Connection Failover Delay Time Connection Failover Delay Time OpenFlow Datapath ID OpenFlow Datapath Description OpenFlow Control Network Primary OpenFlow Control Network Backup PID Failure Mode Flow Misses : : : : : : : : : : : : : : : Enabled 5 5 5 5 3 4 17 30637769011704 DNOS-OF 1.1: N3024P(4TBK0Z1) 192.168.0.10/24 192.168.1.
5.4.2 Example Singletable (NEC) Controller Configuration The NEC controller channel which functions as their control plane between the OFS (OpenFlow Switch) and the PFC controller (which they call their “secure channel”) requires more setup to establish a successful controller communication channel. The configuration used with the NEC in singletable mode is shown in the example below: 1) First set the table processing mode to singletable.
4) Create and set up the OpenFlow controller communication channel settings 4TBK0Z1_console> set openflow controller name test Controller test (index 0) created 4TBK0Z1_console> set openflow controller primary test 192.168.0.3 6633 4TBK0Z1_console> set openflow controller backup test 192.168.1.
Flow Tables Synopsis -------------------Ingress Flow Table (0) Current Number of Flows: 0 Max Number of Flows: 2000 VLAN Flow Table (10) Current Number of Flows: 0 Max Number of Flows: 12288 Termination MAC Flow Table (20) Current Number of Flows: 0 Max Number of Flows: 512 Unicast Routing Flow Table (30) Current Number of Flows: 0 Max Number of Flows: 40960 Multicast Routing Flow Table (40) Current Number of Flows: 0 Max Number of Flows: 8191 Bridging Flow Table (50) Current Number of Flows: 0 Max Number o
5.5 Verifying the Switch to Controller Communications Once the firmware is installed, the management access is configured, and the controller access is configured, you can verify the status of the controller connection.
The controller communications channel goes through the OpenFlow connection handshake protocol (shown below) and should end up at HANDSHAKE_COMPLETE/CONNECTED with communications established on the primary connection channel. Next you need to verify that the switch shows up on the controller topology as an OpenFlow node, as shown in the following section.
5.5.1 Verifying Topology with Ryu Controller For the Ryu controller, in order to verify that the controller sees the switch and to obtain the unique datapath ID, you can use the controller’s REST API. To start Ryu with the REST API enabled, use the Ryu ofctl_rest.py script included with the controller package. From the Ryu server command line: > ryu-manager –verbose ofctl_rest.py You can then use the Ryu REST API’s to communicate with the switch via OpenFlow.
There is no body required for this API command so you can then hit the Send button to send the command to the REST API. The output from the controller is captured and a status shown as seen below where you see “200 OK” as the status of the call. If this call fails there will be an error code where the “200 OK” is, and error status information shown below that, otherwise it returns the list of datapath ID’s that the controller knows about.
5.5.2 Verifying Topology with NEC Controller For the NEC controller, you can use the NEC PF6800 web GUI application to see the topology of the connected physical (“real”) networks as shown below. The DNOS-OF Switch should show up with the appropriate information and a status showing whether it is currently connected or disconnected, along with the currently assigned datapath ID of the DNOS-OF switch.
The following snapshot shows detailed information about the OFS (OpenFlow Switch, in this case the DNOSOF switch) that the NEC PFC controller is connected to. Once the connection is up, the information that was exchanged between the controller and the switch agent can be seen in the real network PFC GUI screens under “ofses”, as shown here. Each OFS is listed by DPID (data path ID), the IP address, and the status of the connection itself.
The following show the NEC PFC controller connection state when there are issues with the connection from the switch and it has disconnected it from the controller.
5.6 Logging Due to the requirement not to impact any of the existing N series firmware, the DNOS-OF switch maintains only a minimal set of in-memory trace logs that are accessible by engineering and support for internal program debugging. All other user configurable logging is intended to use a remote syslog server or, if necessary/desired, the serial console. Later releases of the firmware may add local logging.
7 = ALL Current debug logging verbosity level: 1 (BASIC: FATAL, ERROR, WARNING ) 5.6.1.2 show ip syslog service To see the state of the syslog service in the logging, use the following command. This shows the default value when the switch is first set up: FJ6K0Z1_console> show ip syslog servers Remote Syslog server(s): Not enabled 5.6.
5.6.3.2 set default logging level set default logging level Sets the logging level in the running configuration to be used as the initial configuration when the switch loads. It has the same range of values that the set logging level has. 5.6.4 Syslog Configuration As mentioned previously, there are currently no user accessible local logs kept in DNOS-OF, so setting up the external syslog is very important if you want to actually see the log entries you have configured.
"OFControlNetwork Primary Address": "192.168.0.55/24", "OpenFlow protocol version": "OpenFlow 1.3.4", "connection max retries": 3, "connection retry interval [sec]": 500, "echo timeout [sec]": 5, "failover delay time [sec]": 4, "max failover time [sec]": 17, "periodic echo interval [sec]": 3, "reset echo count": 3, "table processing mode": "singletable" }, "Management Interface": { "dhcp": true, "ip address": "", "ip gateway": "" }, "OpenFlow Controller0": { "backup ip address": "192.168.1.
}, "level": 1 }, "Global OpenFlow Configuration": { "DNOS-OF version": "1.1", "HA feature": "enabled", "OFControlNetwork Backup Address": "192.168.1.55/24", "OFControlNetwork Primary Address": "192.168.0.55/24", "OpenFlow protocol version": "OpenFlow 1.3.
"Default Logging": { "components": { "API": false, "Datapath": false, "Mapping": false, "OFDB": false }, "level": 1 }, "Global OpenFlow Configuration": { "DNOS-OF version": "1.1", "HA feature": "enabled", "OFControlNetwork Backup Address": "192.168.1.55/24", "OFControlNetwork Primary Address": "192.168.0.55/24", "OpenFlow protocol version": "OpenFlow 1.3.
A Appendix - DNOS-OF CLI Command Reference The following is a list of CLI commands available in the latest DNOS-OF firmware. At any time, to get help on the DNOS-OF firmware from the command line interface, you can use the help command, as shown below: JFTP0Z1_console# help Special keys: DEL, BS Ctrl-A Ctrl-E Ctrl-F Ctrl-B Ctrl-D Ctrl-U, X Ctrl-K Ctrl-W Ctrl-P Ctrl-R Ctrl-N Ctrl-Z Tab ? .... .... .... .... .... .... .... .... .... .... .... .... .... .... ....
A.1 Commands boot top level command The boot top level command shows what subcommands are available. Example JFTP0Z1_console# boot boot possible subcommands: system select system partition to boot boot system Use the boot system command to specify the system image that the switch loads at bootup.
clear openflow Shows what subcommands are available to clear various OpenFlow statistics. Example JFTP0Z1_console# clear openflow possible subcommands: flow clear OpenFlow flow data structures group Clear OpenFlow groups from the group tables port clear openflow port information queue clear openflow queue information statistics clear openflow statistics counters clear openflow flow Shows the subcommands available for clearing OpenFlow flow usage statistics only.
clear openflow port statistics command The clear openflow port statistics command clears OpenFlow port statistics only.
clear power Shows the commands available to clear PoE. Example 4TBK0Z1_console> clear power statistics 1 PoE statistics cleared for port 1 clear power statistics command Clears PoE power usage statistics for the specified port. Example 4TBK0Z1_console> clear power statistics 1 PoE statistics cleared for port 1 clear vlan-gate command Clears VLAN Gate Configurations for the specified port.
crypto top level command System crypto key management commands.
debug top level command Use for debugging system components. Example FTP0Z1_console# debug debug possible subcommands: interface system debug interface commands... ip system debug ip commands... debug interface Used for debugging system interface components.
debug ip Use the debug ip command to show the subcommands available under debug ip. Example JFTP0Z1_console# debug ip debug ip possible subcommands: ping traceroute check accessibility of a network node check routed path of a network node debug ip ping command Use the debug ip ping command to check the accessibility of a network node via the management port.
delete top level command Use the delete command to delete files from the local or USB file system. Only certain files can be deleted on the local system, while file on the USB can be deleted. Example JFTP0Z1_console# delete delete Deletes a file from local or usb storage. Valid URLs: backup-config, startup-config usb:// dir top level command Use the dir command to list files in the file system.
help top level command Displays the CLI help screen shown below: Example JFTP0Z1_console> help Special keys: DEL, BS .... delete previous character Ctrl-A .... go to beginning of line Ctrl-E .... go to end of line Ctrl-F .... go forward one character Ctrl-B .... go backward one character Ctrl-D .... delete current character Ctrl-U, X .... delete to beginning of line Ctrl-K .... delete to end of line Ctrl-W .... delete previous word Ctrl-P .... go to previous line in history buffer Ctrl-R ....
no top level command Displays the available subcommands for the no command. Example JFTP0Z1_console# no no possible subcommands: ip openflow password power password clear system ip settings clear system openflow settings remove the password for remote ssessions no power subcommands disable vlan-gate for a port no ip no ip lists available subcommands.
no ip syslog service command This command removes remote syslog service settings. Example FJ6K0Z1_console> no ip syslog no ip syslog possible subcommands: service remove remote syslog service settings no ip telnet server command This command disables the telnet server on the management interface.
no power no power lists the available no power subcommands. Example JFTP0Z1_console# no power no power possible subcommands: high inline management priority threshold no power high (disable high power mode) Disable PoE feature on switch no power management (set power management to default mode) Disable inline power priority of a port and set to defaults Disable PoE power threshold checking and set to defaults no power high command Disable high power mode.
no vlan-gate enable command Disables the vlan-gate for a port. Example FJ6K0Z1_console> no vlan-gate enable No vlan-gate enable Disable vlan-gate a port. no vlan-gate port command Removes the VLAN ID from the associated vlan ID list of the vlan-gate on a port. Example FJ6K0Z1_console> no vlan-gate port no vlan-gate port Remove vlan id from a vlan-gate for a port. no dscp-trust port command Removes the IP DSCP mapping to egress queue for a port.
set top level command Displays the available subcommands for the set command.
5 = ALL set default logging level command Use the set default logging level command to change the default logging level that the switch uses when the system starts. Example FJ6K0Z1_console> set default logging level set default logging level Set the default logging level. This is the persistent log level that the switch initializes to by default when it starts up.
set ip gateway command Use to set the default IP gateway on the management port and store this information to the switch configuration. Example FJ6K0Z1_console> set ip gateway set ip gateway Set the default_gateway for the management port. set ip ssh server command Use to enable the ssh server on the management port and store that state to the switch configuration.
set logging component command Use this API to set the runtime logging components on the switch until rebooted.
set openflow Displays available subcommands for global OpenFlow settings.
set openflow backup control port command Used to set the OpenFlow Control Network backup control port IP address and subnet mask in CIDR notation for the port on this switch used for communications with the NEC PFC OpenFlow controller. .
Creates a new OpenFlow controller connection object with the user specified name. The specified name can be any alphanumeric string up to 64 characters. Use 'no openflow controller ' to remove the specified controller. Note that this will create a new controller object instance in the running config which can be seen either by using the show running-config or the show openflow config CLI commands, as shown below.
Backup : Priority : Connection Type : Indigo Role : Connection State: (not configured) 0 TCP Unknown DISCONNECTED From the running-config: "OpenFlow Controller0": { "backup ip address": "", "backup tcp port": 6633, "connection type": "tcp", "name": "test2", "primary ip address": "", "primary tcp port": 6633, "priority": 0, "state": "disabled" } set openflow controller priority command Sets the Open Flow controller priority for the given named controller object.
set openflow controller state command Sets the state of the named Open Flow controller to enabled or disabled. Enabling the state initiates the agent connection in the switch controller object to the actual controller, whereas disabling the state closes the connection. Example 4TBK0Z1_console> set openflow controller state set openflow controller state Sets the state of the named OpenFlow controller connection to enabled or disabled.
set openflow mode command Set the current openflow protocol processing mode to either multitable mode, exposing multiple switch flow tables to the end user (default DNOS-OF 1.0 behavior) or singletable (default DNOS-OF 1.1 behavior where controller only talks to table 0) Example FJ6K0Z1_console> set openflow mode set openflow mode set openflow packet Displays the available subcommands for set openflow packet.
FJ6K0Z1_console> set openflow primary control set openflow primary control possible subcommands: port set the primary OpenFlow control ports network IP address set openflow primary control port command Used to set the OpenFlow Control Network primary control port IP address and subnet mask in CIDR notation for the port on this switch used for communications with the NEC PFC OpenFlow controller. .
4TBK0Z1_console> set openflow cookie packetmirror set openflow cookie packetmirror Change cookie for packetmirror 4TBK0Z1_console> set openflow cookie packetmirror 0x2 OpenFlow cookie for mirror packet set to 0x0000000000000002 set password command Use the set password command to change the password stored in the running configuration and used to authenticate SSH sessions.
set power Displays the available set power PoE subcommands.
set power management dynamic command Use the set power management dynamic command to set the PoE power management mode to dynamic mode. Example FJ6K0Z1_console> set power management dynamic PoE power management mode set to dynamic set power management static command Use the set power management static command to set the PoE power management mode to static mode.
set power reset command Use the set power reset command to reset the PoE power on a given port. This is useful for ports that are stuck in an error state. Example FJ6K0Z1_console> set power reset FJ6K0Z1_console> set power reset 1 PoE power on port 1 reset set power threshold command Use the set power threshold command to set the power point at which ports are disconnected from PoE.
Example FJ6K0Z1_console> set Set vlan-gate Set vlan-gate FJ6K0Z1_console> set vlan-gate port port for a port with vlan id vlan-gate port 1 50 show Lists the subcommands that are available for the show command.
"connection max retries": 0, "connection retry interval": 2000, "enabled": true, "ip address": "198.18.3.201", "ip port": 6633, "periodic echo ms": 10000, "priority": 0, "protocol version": "OpenFlow 1.3.4", "reset echo count": 3, "tls": false }, "Password Hash": "dWAj3KHZgdo", "Remote Syslog": { "enabled": true, "ip address": "172.25.2.
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINSybSubK7fgoCXmFKh7PbhxpsP7R1hiBuEdt4zsLyH/ ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBOtADc0RH+KoLRSaULZ25AZ2B2lVpPLckJAJE qCWPtqplE+rXjAoPuGV9f/W5bXARY6sqkb6jht1KiA2H8Hb/Eo= 110
show interfaces top level command Lists the subcommands available under show interfaces. Example FJ6K0Z1_console> show interfaces show interfaces possible subcommands: configuration show status show switchport show ? interfaces configuration information interfaces status information operational status of an interface show interfaces configuration command Shows the interfaces configuration information.
show interfaces status command Shows the interfaces status information. Example FJ6K0Z1_console> show interfaces status Show interfaces status Show status information for all available interfaces.
show ip Displays the list of subcommands available for the show ip command. Example FJ6K0Z1_console> show ip Incomplete command! possible subcommands: address gateway ssh syslog telnet display management ip address display management ip gateway display ssh server status show ip system syslog information show telnet service status show ip address command Displays the management port IP address information. Example FJ6K0Z1_console> show ip address address: 198.18.3.
show logging command The show logging command dumps the current settings for openflow debug level and openflow debug components.
show openflow top level command Displays the show commands available for OpenFlow Example FJ6K0Z1_console> show openflow possible subcommands: config flow flows group groups port queue statistics tables show show show show show show show show show OpenFlow configuration system openflow flow information OpenFlow flow table entries system openflow group information OpenFlow group table entries openflow port information openflow queue information all OpenFlow statistics all OpenFlow table information show o
Multicast Routing Flow Table (40) Current Number of Flows: 0 Max Number of Flows: 8191 Bridging Flow Table (50) Current Number of Flows: 0 Max Number of Flows: 32767 ACL/Policy Flow Table (60) Current Number of Flows: 2 Max Number of Flows: 7680 OpenFlow SDN Controllers -----------------------Controller 0 (name:test2) Primary : Backup : Priority : Connection Type : Indigo Role : Connection State: (not configured) (not configured) 0 TCP Unknown DISCONNECTED show openflow flow Displays the subc
show openflow flow tables command Shows information about the openflow flow tables available and supported in DNOS-OF.
show openflow flows command Shows information about the entire contents of the openflow flow database.
Number of entries actually found = 2 --------------Multicast Entries---------------- show openflow group Displays the subcommands available for show openflow group. Example 4TBK0Z1_console> show openflow group show openflow group possible subcommands: statistics show OpenFlow group statistics tables show OpenFlow group table information show openflow group statistics command Shows information about the openflow group table usage statistics in DNOS-OF.
L2 Unfiltered Group: Number of Group Entries:0 Bucket Entries:1 Max Group Entries:14336 Max show openflow groups command Shows all table and statisitics information about all of the systems openflow groups. Example 4TBK0Z1_console> show openflow groups Showing the OpenFlow groups in the group tables No group entries found.
show openflow port statistics command Shows all openflow port statisitics information.
RxFrameErrors=0, RxOverErrors=0, RxCRCErrors=0, Collisions=0, (seconds)=67725 Port 15 (ge1/0/15): RxPackets=0, RxByte=0, TxPackets=0, TxBytes=0 RxErrors=0, RxDrops=0, TxDrops=0 RxFrameErrors=0, RxOverErrors=0, RxCRCErrors=0, Collisions=0, (seconds)=67725 Port 16 (ge1/0/16): RxPackets=0, RxByte=0, TxPackets=0, TxBytes=0 RxErrors=0, RxDrops=0, TxDrops=0 RxFrameErrors=0, RxOverErrors=0, RxCRCErrors=0, Collisions=0, (seconds)=67725 Port 17 (ge1/0/17): RxPackets=0, RxByte=0, TxPackets=0, TxBytes=0 RxErrors=0, Rx
show openflow queue Displays the subcommands available for show openflow queue. Example 4TBK0Z1_console> show openflow queue show openflow queue possible subcommands: statistics show OpenFlow queue statistics show openflow queue statistics command Shows all openflow queue statistics information.
RxErrors=0, RxDrops=0, TxDrops=0 RxFrameErrors=0, RxOverErrors=0, RxCRCErrors=0, Collisions=0, (seconds)=67906 Port 12 (ge1/0/12): RxPackets=0, RxByte=0, TxPackets=0, TxBytes=0 RxErrors=0, RxDrops=0, TxDrops=0 RxFrameErrors=0, RxOverErrors=0, RxCRCErrors=0, Collisions=0, (seconds)=67906 Port 13 (ge1/0/13): RxPackets=0, RxByte=0, TxPackets=0, TxBytes=0 RxErrors=0, RxDrops=0, TxDrops=0 RxFrameErrors=0, RxOverErrors=0, RxCRCErrors=0, Collisions=0, (seconds)=67906 Port 14 (ge1/0/14): RxPackets=0, RxByte=0, TxPa
RxFrameErrors=0, RxOverErrors=0, RxCRCErrors=0, Collisions=0, Duration (seconds)=67906 show openflow tables command Shows information about all openflow tables (currently flow and group).
L2 Flood Group: Number of Group Entries:0 Max Bucket Entries:1 L3 Interface Group: Number of Group Entries:0 Max Bucket Entries:1 L3 Multicast Group: Number of Group Entries:0 Max Bucket Entries:1 L3 ECMP Group: Number of Group Entries:0 Max Bucket Entries:1 L2 Overlay Group: Number of Group Entries:0 Max Bucket Entries:1 MPLS Label Group: Number of Group Entries:0 Max Bucket Entries:1 MPLS Forwarding Group: Number of Group Entries:0 Max Bucket Entries:1 L2 Unfiltered Group: Number of Group Entries:0 Max Bu
RxErrors=0, RxDrops=0, TxDrops=0 RxFrameErrors=0, RxOverErrors=0, RxCRCErrors=0, Collisions=0, (seconds)=68206 Port 6 (ge1/0/6): RxPackets=0, RxByte=0, TxPackets=0, TxBytes=0 RxErrors=0, RxDrops=0, TxDrops=0 RxFrameErrors=0, RxOverErrors=0, RxCRCErrors=0, Collisions=0, (seconds)=68206 Port 7 (ge1/0/7): RxPackets=0, RxByte=0, TxPackets=0, TxBytes=0 RxErrors=0, RxDrops=0, TxDrops=0 RxFrameErrors=0, RxOverErrors=0, RxCRCErrors=0, Collisions=0, (seconds)=68206 Port 8 (ge1/0/8): RxPackets=0, RxByte=0, TxPackets=
RxFrameErrors=0, RxOverErrors=0, RxCRCErrors=0, Collisions=0, (seconds)=68206 Port 22 (ge1/0/22): RxPackets=0, RxByte=0, TxPackets=0, TxBytes=0 RxErrors=0, RxDrops=0, TxDrops=0 RxFrameErrors=0, RxOverErrors=0, RxCRCErrors=0, Collisions=0, (seconds)=68206 Port 23 (ge1/0/23): RxPackets=0, RxByte=0, TxPackets=0, TxBytes=0 RxErrors=0, RxDrops=0, TxDrops=0 RxFrameErrors=0, RxOverErrors=0, RxCRCErrors=0, Collisions=0, (seconds)=68206 Port 24 (ge1/0/24): RxPackets=0, RxByte=0, TxPackets=0, TxBytes=0 RxErrors=0, Rx
show process cpu command Displays the Linux process statistics for the CPU Example FJ6K0Z1_console> show process cpu Mem: 279164K used, 753024K free, 0K shrd, 0K buff, 56464K cached CPU: 0% usr 0% sys 0% nic 100% idle 0% io 0% irq 0% sirq Load average: 0.09 0.11 0.
show running-config command Shows the data stored currently in the running configuration Example FJ6K0Z1_console> show running-config { "Default Logging": { "components": { "API": true, "Mapping": true, "OFDB": true, "datapath": true }, "level": 1 }, "Management Interface": { "dhcp": true, "ip address": "", "ip gateway": "" }, "OpenFlow Controller": { "connection max retries": 0, "connection retry interval": 2000, "enabled": true, "ip address": "198.18.3.
show startup-config command Shows the data stored for the configuration that the switch will use when it boots up next time. Example FJ6K0Z1_console> show startup-config { "Default Logging": { "components": { "API": true, "Mapping": true, "OFDB": true, "datapath": true }, "level": 1 }, "Management Interface": { "dhcp": true, "ip address": "", "ip gateway": "" }, "OpenFlow Controller": { "connection max retries": 0, "connection retry interval": 2000, "enabled": true, "ip address": "198.18.3.
show statistics switchport command Lists out the statistics that are kept for the switch.. Example FJ6K0Z1_console> show statistics Incomplete command! possible subcommands: switchport show statistics for the switch FJ6K0Z1_console> show statistics show statistics possible subcommands: switchport show statistics for the switch FJ6K0Z1_console> show statistics switchport 1 Total Packets Received (Octets)..........0 Packets Received Without Error...........0 Unicast Packets Received..............
show system command Lists out information showing the state of the system Example FJ6K0Z1_console> show system System Description: Burned in MAC Address: System Model ID: Machine Type: Serial Number: Service Tag: Asset Tag: Dell Networking N3024P f8:b1:56:67:99:91 N3024P Dell Networking N3024P CN0C3M5M282984CE0129A02 FJ6K0Z1 12345 System Thermal Conditions: Unit Temperature State (Celsius) ---- ----------- ----0 32 OK Temperature Sensors: Unit Description Temperature (Celsius) ---- ----------- ----------0
show version command Displays the versions of firmware on the switch. Example FJ6K0Z1_console> show version Machine Description............... Dell Networking Switch System Model ID................... N3024P Machine Type...................... Dell Networking N3024P Serial Number..................... CN0C3M5M282984CE0129A02 Manufacturer...................... 0xbc00 Burned In MAC Address............. f8:b1:56:67:99:91 SOC Version....................... BCM56342_A0 HW Version........................
system clock Shows subcommands allowing the user to configure current system time and date. Example FJ6K0Z1_console> system clock Incomplete command! possible subcommands: date time set the system date set the system time system clock date command Allows the user to configure current system date. Example FJ6K0Z1_console> system clock date Error: Missing or invalid arguments! Usage: system clock date Set the system date. Arguments must be in numeric form.
unmount Shows the subcommands available for the unmount command. unmount unmount usb device Example FJ6K0Z1_console> unmount unmount possible subcommands: usb prepare the usb drive for safe removal unmount usb command Allows the user to unmount the USB device from the system. It shows an informational message if the device is not mounted, but this is informational only.
B Appendix – Setting up flows with the DNOS-OF SDN Agent, Ryu SDN Controller, and Ryu REST API The following shows annotated console extracts of installing the Ryu 3.23 controller, setting up the Ryu REST API JSON parser, connecting the DNOS-OF switch agent to the Ryu controller, setting up some test flows, and shows some other useful utility commands available through the Ryu controller. This example is shown running on a Debian Linux machine but also runs fine on Ubuntu and CentOS. 1. Ryu 3.23.
PROVIDES EventOFPMeterConfigStatsReply TO {'RestStatsApi': set(['main'])} PROVIDES EventOFPPortStatsReply TO {'RestStatsApi': set(['main'])} PROVIDES EventOFPAggregateStatsReply TO {'RestStatsApi': set(['main'])} PROVIDES EventOFPQueueStatsReply TO {'RestStatsApi': set(['main'])} PROVIDES EventOFPStatsReply TO {'RestStatsApi': set(['main'])} PROVIDES EventOFPDescStatsReply TO {'RestStatsApi': set(['main'])} PROVIDES EventOFPMeterStatsReply TO {'RestStatsApi': set(['main'])} PROVIDES EventOFPGroupStatsReply
07-13 21:38:59.311044 of-switch: MSG: src/of-switch/OF_SDNAgent.cpp:SetOpenFlowController:Adding controller 172.25.11.93:6633, (TCP connection), to configuration 07-13 21:38:59.312255 of-switch: MSG: src/of-switch/OF_SDNController.cpp:Connect:Initializing controller 172.25.11.93:6633 07-13 21:38:59.312482 ofconnectionmanager: INFO: Added remote connection: 172.25.11.93:6633 07-13 21:39:00.336444 ofconnectionmanager: INFO: cxn 172.25.11.93:6633: DISCONNECTED->CONNECTING 07-13 21:39:00.
Or you can once again use the CURL command line based REST API tool.
e) DELETE GROUP COMMAND: curl -i -v -X POST -d '@group_delete.json' http://localhost:8080/stats/groupentry/delete Here group_delete.
3. Where within the Ryu directory structure to find the REST API script Navigate to ryu/app folder and find “ofctl_rest.py” which has the logic to parse the input and translate it to an openflow packet via the controller and send it to the agent.
C Appendix - Example of setting up a basic Ethernet L2 Bridging topology for end to end traffic with Ryu The following section illustrates how to establish an end to end traffic flow using basic Ethernet Layer 2 bridging. The Ryu controller, a web browser and the REST API web utility Postman are used in these examples, but any OpenFlow 1.3.4 compliant controller and REST API tool can be used. Note: that Ryu 3.
C.2 Step 1 - Set up a VLAN flow with Ryu The script below shows the JSON code that is used to create the first flow, in the VLAN table (table 10 in the SOC).
Finally the body of the flow request is filled in with our REST flow add request, as shown below: To send the flow add request to the switch via the controller, hit the Send button. You should see a couple of things at this point. On the switch console, if the flow is successfully added, you will see something like the following: FJ6K0Z1_console> 08-10 19:39:56.799895 indigo_ofdpa_driver: MSG: src/indigo/ofdpadriver/ind_ofdpa_fwd.c:indigo_fwd_flow_create:flow ID=10 08-10 19:39:56.
To verify the flow that was indeed added to the switch, the show openflow flows command can be used as shown below: FJ6K0Z1_console> show openflow flows Showing openflow flow entries for all tables Ingress Port Table (0) Flow Entries ---------------------------------Number of entries reported = 0 Maximum number of entries for this table = 2000 Number of entries actually found = 0 VLAN Table (10) Flow Entries -------------------------------------Number of entries reported = 0 Maximum number of entries for th
Bridging Table (50) Flow Entries -------------------------------Number of entries reported = 0 Maximum number of entries for this table = 32767 Number of entries actually found = 0 ACL Policy Table (60) Flow Entries ---------------------------------Number of entries reported = 0 Maximum number of entries for this table = 7680 Number of entries actually found = 0 What this flow does in the switch, is to say that anything coming into port 2 on VLAN 10 should be forwarded on via the GOTO TABLE statement to th
table, ACL/Policy, where it egresses the switch on port 5. This gets an end to end flow from an ingress of port 2 to an egress of port 5.
D Appendix - additional resources Dell.com/support Dell is focused on meeting your needs with proven services and support. DellTechCenter.com is an IT Community where you can connect with Dell Customers and Dell employees for the purpose of sharing knowledge, best practices, and information about Dell products and installations. Referenced and/or recommended DNOS-OF, SDN, OpenFlow and OF-DPA publications: ONF site: https://www.opennetworking.org/ Broadcom OFDPA site: https://github.