Software-Defined Networking (SDN) Deployment Guide Version 1.
Notes, Cautions, and Warnings NOTE: A NOTE indicates important information that helps you make better use of your computer. 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. © 2013 Dell Inc.
Contents 1 Introduction .................................................................................................................................5 Overview...................................................................................................................................................................5 OpenFlow 1.0 Support...............................................................................................................................................
Z9000 S4810 S4820T..........................................................................................................................................29 controller ................................................................................................................................................................30 Z9000 S4810 S4820T..........................................................................................................................................
Introduction 1 OpenFlow (OF) 1.0 [STD-1] is supported on the S4810, S4820T and Z9000 platform and MXL switches. Overview In a software-defined network (SDN), an external controller-cluster manages the network and the resources on each switch. OpenFlow is a protocol used for communication between the controller and the switch. Figure 1. OpenFlow Topology — Overview SDN offloads all switching and routing protocol state machines to the controller.
• source MAC address (SMAC) • EtherType • session initiation protocol (SIP) • dynamic IP (DIP) • type of service (TOS) • protocol • transport source-port (transport sport) • transport destination-port (transport dport) The software forwards the match results out of one or more network ports, with the option to modify the packet headers. SDN currently supports OpenFlow version 1.0. For information about exceptions, refer to Exceptions. OpenFlow 1.0 Support OpenFlow (OF) 1.
Limitations • OFPAT_OUTPUT to OFPP_FLOOD and OFPP_ALL are supported on the S4810, S4820T, and MXL switches. These actions are not supported on the Z9000 platform. • Multiple output ports are supported on S4810, S4820T, and MXL switches. Multiple output ports are not supported on the Z9000 platform. • The set/modify actions must precede the output ports actions. If you specify multiple output ports, the switch cannot transmit different copies.
2 Flow Types Dell Networking switches support four types of flows: • Access control list (ACL) • L2 • L3 • Learning bridge (LB) The following sections describe the mandatory match fields, optional match fields, mandatory actions, and optional actions for each flow type. ACL Flows Parameter Type Parameters Mandatory match fields None; any of the match parameters can be wildcards. Optional match fields All 12 match fields defined in OpenFlow (OF) 1.0 are supported. Mandatory actions None.
Parameter Type Optional match fields Mandatory actions Optional actions Parameters • nw_dst (dst-ip) • All fields other than the ones listed in “Mandatory match fields” and “Optional match fields” must be wildcards. • You must specify set_dl_src (set src-mac) as the port mac (local mac) for the swtich. • set_dl_dst (set dst-mac) • Single OFPAT_OUTPUT action to a switch port. OFPAT_SET_VLAN is optional for OpenFlow (OF) ports and mandatory for OF virtual local area networks (VLANs).
• The number of flows supported on each switch depends on the flow type. • OF flow types can be combined — for example, the following flow combination is supported: 256 ACL flows, 48,000 L2 flows, 24,000 LB flows, and 6,000 L3 flows.
Configuring ACL CAM Carving on the S4810, S4820T, and MXL switch 3 Dell Networking switches can operate in Hybrid mode, which enables OpenFlow and legacy functionality on the same switch. By default, access control list content addressable memory (ACL CAM) space is not allocated for OpenFlow. To enable OpenFlow, reserve CAM space for OpenFlow using the following commands. For more information on CAM, refer to the Content Addressable Memory (CAM) chapter in the FTOS Configuration Guide.
Configuring ACL CAM Carving on Z9000 4 Dell Networking switches can operate in Hybrid mode, which enables OpenFlow and legacy functionality on the same switch. By default, access control list content addressable memory (ACL CAM) space is not allocated for OpenFlow. To enable OpenFlow, reserve CAM space for OpenFlow using the following commands. For more information on CAM, refer to the Content Addressable Memory (CAM) chapter in the FTOS Configuration Guide.
Configuring OpenFlow Instances 5 This section describes how to enable and configure OpenFlow instances on a switch. • You can use up to eight OpenFlow instances on a switch. The OpenFlow (OF) ID range is from 1 to 8. • You must allocate CAM blocks for use by OpenFlow before configuring any OpenFlow instances. For more information, refer to Config_ACL_CAM_Carving for S4810, S4820T, and MXL switches or Config_ACL_CAM_Carving_Z9k for the Z9000 platform.
3. OPENFLOW INSTANCE mode shutdown 4. Add a physical interface or VLAN to an OpenFlow instance. INTERFACE mode of-instance of-id NOTE: For more information, refer to OF_Interfaces 5. Specify the interface type for the OF instance. OPENFLOW INSTANCE mode interface-type {any|port|vlan} NOTE: Dell Networking does not recommend selecting any for the interface-type unless both of-ports and of-vlans are required in a single instance.
OpenFlow Interfaces 6 This section describes how you can apply OpenFlow to specific interfaces. • • • • You can use the S4810, S4820T, Z9000 or MXL switch as a Hybrid switch, allowing both OpenFlow (OF) and legacy functionality simultaneously. By default, all ports are available for legacy functionality. To enable OpenFlow, associate a port or virtual local area network (VLAN) to an OF instance. You can only do this when the OF instance is disabled (in a Shut state).
NOTE: You can only create OF VLANs when the associated instance is disabled (in a Shut state). There is an interface-type parameter in each instance. By default, this parameter is set to port, indicating that the instance is used for OF ports. To use an instance in OF VLANs, change this parameter to vlan, as shown below: FTOS(conf)#openflow of-instance 1 FTOS(conf-of-instance-1)#interface-type vlan FTOS(conf-of-instance-1)# To use both OF ports and OF VLANs, set the interface type to any.
Flow Setup 7 This chapter describes the configuration options required to set up flows. Sample Topology In the following sample topology, two OF instances are shown. of-instance 1 has an interface type of port and demonstrates ACL and L3 flows. of-instance 2 has an interface type of VLAN and demonstrates ACL, L2, LB, and L3 flows. LB and L2 flows are supported on OF VLANs only. Figure 2.
Number of Flows Packets (acl) Bytes (acl) Controller 1 Controller 2 Port List : : : : : : Vlan List Vlan Mbr list : : 1 TCP, 10.11.205.184/6633, connected (equal) Te 0/7 (8), Te 0/31 (32) To display information for the second OF instance, use the show running-config openflow of-instance 2 command: FTOS# show running-config openflow of-instance 2 ! openflow of-instance 2 controller 1 10.11.205.
Valid Match: Etype,DMAC,IP proto,DPort In Port : * EType SMAC : * DMAC VLAN id : * VLAN PCP IP TOS : * IP proto Src IP : * Dest IP Src Port : * Dest Port Actions: Set VLAN id: 111 Output: Te 0/31 : : : : : : ip 00:11:11:11:11:11 * udp * 8900 FTOS#show openflow of-instance 1 Instance : 1 Admin State : Up Interface Type : Port DP Id : 00:01:00:01:e8:8b:1a:30 Forwarding Tbls : acl,mac,route Flow map : l3 LB assist : disabled EchoReq interval: 15 seconds Connect interval: 15 seconds Number of Flows : 1 (acl:
Instance: 1, Table: route, Flow: 2, Cookie: 0xffffffffa17177b0 Priority: 32768, Internal Priority: 0 Up Time: 0d 00:00:13, Hard Timeout: 0 seconds Idle Timeout: 0 seconds, Internal Idle Timeout: 0 seconds Packets: -, Bytes: Match Parameters: Valid Match: Etype,DMAC,DIP In Port : * EType : ip SMAC : * DMAC : 00:01:e8:8b:1a:32 VLAN id : * VLAN PCP : * IP TOS : * IP proto : * Src IP : * Dest IP : 1.1.1.
The following example demonstrates a sample flow in of-vlan 200: FTOS#show openflow flows of-instance 2 Instance: 2, Table: mac, Flow: 4, Cookie: 0xffffffffac2dbbf2 Priority: 32768, Internal Priority: 0 Up Time: 0d 00:00:09, Hard Timeout: 0 seconds Idle Timeout: 0 seconds, Internal Idle Timeout: 0 seconds Packets: -, Bytes: Match Parameters: Valid Match: DMAC,Vid In Port : * EType : * SMAC : * DMAC : 00:22:22:22:22:22 VLAN id : 200 VLAN PCP : * IP TOS : * IP proto : * Src IP : * Dest IP : * Src Port : * Des
Packet Trace Enable OpenFlow protocol packet tracing by using the debug openflow packets packet-type {packets} of-instance {of-id} command. For more information, refer to debug openflow packets.
Exceptions 8 This section describes the constraints of OpenFlow. • Dell Networking switches can operate as Hybrid switches (switches running OpenFlow and legacy functions simultaneously). You cannot enable Legacy functionality (switching and routing) on OF ports or OF virtual local area networks (VLANs), as these interfaces are controlled by an OpenFlow controller and are not available. • Stacking of OpenFlow switches is not supported for the S4810, S4820T, or MXL switches.
• For L3 flows, flow priority is not applicable. Instead, the dst-ip network mask length is used to prioritize the flow, with longer mask lengths having priority over shorter mask lengths. For example, an L3 flow with a dst-ip network mask length of 32 has priority over a flow with a dst-ip network mask length of 31. • Time-to-live (TTL) is decremented for traffic forwarded using L3 flows.
9 SDN Commands The following commands are for software-defined networking (SDN) OpenFlow. • connect retry-interval • controller • debug openflow packets • flow-map • interface-type • learning-switch-assist • multiple-fwd-table • of-instance (Interface) • openflow of-instance • show openflow • show openflow flows • shutdown connect retry-interval Configure the timed interval (in seconds) that the OpenFlow (OF) instance waits after requesting a connection with the OpenFlow controller.
controller Specify the OpenFlow controller configuration that the OpenFlow instance uses to establish a connection. Z9000 S4810 S4820T Syntax Parameter controller {controller-id}{ip-address}[port port-number]tcp controller-id Enter the controller number (must be 1). ip-address Enter the IP address of the controller. port port-number Enter the keyword port followed by the port number to use for the connection. The range is from 1 to 65535.
of-instance {of-id} Defaults None Command Modes EXEC Command History error Enable debugging for error packets. featuresreply Enable debugging for features-reply packets. featuresrequest Enable debugging for features-request packets. flow-mod Enable debugging for flow-mod packets. flow-removed Enable debugging for flow-removed packets. get-configreply Enable debugging for get-config-reply packets. get-configrequest Enable debugging for get-config-request packets.
flow-map Specify if flows installed by the controller should be interpreted by the switch for placement in L2 or L3 tables. Z9000 S4810 S4820T Syntax flow-map {l2|l3} enable Parameter l2 Enter l2 to interpret Layer 2 flows. l3 Enter l3 to interpret Layer 3 flows. Defaults None (not enabled) Command Modes OPENFLOW INSTANCE Command History Version 9.2(0.0) Introduced on the S4820T and MXL Switch. Version 9.1(0.0) Introduced on the Z9000 and S4810.
Command History Version 9.2(0.0) Introduced on the S4820T and MXL Switch. Version 9.1(0.0) Introduced on the Z9000 and S4810. Example (VLAN interface type) FTOS(conf)#openflow of-instance 1 FTOS(conf-of-instance-1)#interface-type vlan FTOS(conf-of-instance-1)# Usage Information Dell Networking does not recommend selecting any for the interface-type unless both of-ports and of-vlans are required in a single instance.
Defaults Disabled Command Modes OPENFLOW INSTANCE Command History Version 9.2(0.0) Introduced on the S4820T and MXL Switch. Version 9.1(0.0) Introduced on the Z9000 and S4810. Usage Information This is a vendor-specific CLI. Related Commands openflow of-instance — Creates or modifies an OpenFlow instance. of-instance (Interface) Add a physical interface or LAG to an OpenFlow instance.
• MAC • MTU • Port-channel protocols • Spanning-tree protocols • Switchport The following features are not supported on LAGs associated with an OpenFlow instance: Related Commands • Ethernet • GVRP • IPv4 • IPv6 • MAC • MTU • Spanning-tree protocols • Switchport openflow of-instance — Creates or modifies an OpenFlow instance. openflow of-instance Create an OF instance or modify an existing OF instance.
• To establish a connection with the controller, enable the OF instance using the no shutdown command. • To modify the OF instance, disable the OF instance first using the shutdown command. You can configure one controller IP and one TCP port for each OF instance. The number of supported flows depends on the flow type.
DP Id : Forwarding Tbls : Flow map : LB assist : EchoReq interval: Connect interval: Number of Flows : Packets (acl) : Bytes (acl) : Controller 1 : Controller 2 : Port List : Vlan List : Vlan Mbr list : 00:01:00:01:e8:8b:1a:30 acl disabled 15 seconds 15 seconds 0 TCP, 10.11.205.184/6633, not-connected - Usage Information To display general information such as version, capabilities, and supported actions, use the show openflow command.
Related Commands show openflow — Displays general information about OpenFlow instances. shutdown (OpenFlow Instance) Enable or disable the OpenFlow instance. Z9000 S4810 S4820T Syntax [no] shutdown Defaults Disabled (shutdown) Command Modes OPENFLOW INSTANCE Command History Usage Information Version 9.2(0.0) Introduced on the S4820T and MXL Switch. Version 9.1(0.0) Introduced on the S4810 and Z9000. To enable the OpenFlow instance, use the no shutdown command.