• No results found

Junos OS Support for OpenFlow v1.0 Beta Draft

N/A
N/A
Protected

Academic year: 2021

Share "Junos OS Support for OpenFlow v1.0 Beta Draft"

Copied!
66
0
0

Loading.... (view fulltext now)

Full text

(1)
(2)

This product includes the Envoy SNMP Engine, developed by Epilogue Technology, an Integrated Systems Company. Copyright © 1986-1997, Epilogue Technology Corporation. All rights reserved. This program and its documentation were developed at private expense, and no part of them is in the public domain.

This product includes memory allocation software developed by Mark Moraes, copyright © 1988, 1989, 1993, University of Toronto. This product includes FreeBSD software developed by the University of California, Berkeley, and its contributors. All of the documentation and software included in the 4.4BSD and 4.4BSD-Lite Releases is copyrighted by the Regents of the University of California. Copyright © 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994. The Regents of the University of California. All rights reserved.

GateD software copyright © 1995, the Regents of the University. All rights reserved. Gate Daemon was originated and developed through release 3.0 by Cornell University and its collaborators. Gated is based on Kirton’s EGP, UC Berkeley’s routing daemon (routed), and DCN’s HELLO routing protocol. Development of Gated has been supported in part by the National Science Foundation. Portions of the GateD software copyright © 1988, Regents of the University of California. All rights reserved. Portions of the GateD software copyright © 1991, D. L. S. Associates.

This product includes software developed by Maker Communications, Inc., copyright © 1996, 1997, Maker Communications, Inc. Juniper Networks, Junos, Steel-Belted Radius, NetScreen, and ScreenOS are registered trademarks of Juniper Networks, Inc. in the United States and other countries. The Juniper Networks Logo, the Junos logo, and JunosE are trademarks of Juniper Networks, Inc. All other trademarks, service marks, registered trademarks, or registered service marks are the property of their respective owners.

Juniper Networks assumes no responsibility for any inaccuracies in this document. Juniper Networks reserves the right to change, modify, transfer, or otherwise revise this publication without notice.

Products made or sold by Juniper Networks or components thereof might be covered by one or more of the following patents that are owned by or licensed to Juniper Networks: U.S. Patent Nos. 5,473,599, 5,905,725, 5,909,440, 6,192,051, 6,333,650, 6,359,479, 6,406,312, 6,429,706, 6,459,579, 6,493,347, 6,538,518, 6,538,899, 6,552,918, 6,567,902, 6,578,186, and 6,590,785.

Junos OS Support for OpenFlow v1.0—Beta Draft Copyright © 2012, Juniper Networks, Inc. All rights reserved.

The information in this document is current as of the date on the title page. YEAR 2000 NOTICE

Juniper Networks hardware and software products are Year 2000 compliant. Junos OS has no known time-related limitations through the year 2038. However, the NTP application is known to have some difficulty in the year 2036.

END USER LICENSE AGREEMENT

The Juniper Networks product that is the subject of this technical documentation consists of (or is intended for use with) Juniper Networks software. Use of such software is subject to the terms and conditions of the End User License Agreement (“EULA”) posted at

(3)

Chapter 1

Junos OS Support for OpenFlow v1.0 Overview and Configuration . . . 7

Understanding Junos OS Support for OpenFlow v1.0 . . . 7

OpenFlow Overview . . . 7

OpenFlow Virtual Switches . . . 8

OpenFlow Interfaces . . . 8

OpenFlow Flows . . . 9

Installing Support for OpenFlow v1.0 on Devices Running Junos OS . . . 9

Configuring Support for OpenFlow v1.0 on Devices Running Junos OS . . . 10

Configuring the OpenFlow Interfaces . . . 10

Configuring the OpenFlow Protocol . . . 11

Configuring the OpenFlow Routing Instance (MX Series) . . . 11

Example: Enabling OpenFlow v1.0 on a Device Running Junos OS . . . 12

Junos OS Support for OpenFlow v1.0 Compliance Matrix . . . 15

Chapter 2

Summary of OpenFlow Configuration Statements . . . 23

[edit protocols openflow] Hierarchy Level . . . 23

address (Protocols OpenFlow) . . . 24

controller (Protocols OpenFlow) . . . 25

default-action (Protocols OpenFlow) . . . 26

interfaces (Protocols OpenFlow) . . . 26

openflow (Protocols OpenFlow) . . . 27

port (Protocols OpenFlow) . . . 28

protocol (Protocols OpenFlow) . . . 29

role (Protocols OpenFlow) . . . 29

switch (Protocols OpenFlow) . . . 30

traceoptions (Protocols OpenFlow) . . . 31

Chapter 3

OpenFlow Operational Mode Commands . . . 33

OpenFlow Operational Mode Commands . . . 33

show openflow capability . . . 34

show openflow controller . . . 38

show openflow filters . . . 40

show openflow flows . . . 43

show openflow interfaces . . . 46

show openflow statistics flows . . . 49

show openflow statistics interfaces . . . 52

show openflow statistics packet . . . 55

show openflow statistics summary . . . 57

show openflow statistics tables . . . 58

show openflow summary . . . 60

(4)

Chapter 4

Index . . . 63

(5)

Chapter 1

Junos OS Support for OpenFlow v1.0 Overview and Configuration . . . 7

Table 1: Software Packages for OpenFlow v1.0 Support . . . 10

Table 2: Junos OS Support for OpenFlow v1.0 Compliance Matrix for Message Set . . . 15

Table 3: Junos OS Support for OpenFlow v1.0 Compliance Matrix for Match Conditions . . . 18

Table 4: Junos OS Support for OpenFlow v1.0 Compliance Matrix for Wild Cards . . . 19

Table 5: Junos OS Support for OpenFlow v1.0 Compliance Matrix for Flow Actions . . . 19

Table 6: Junos OS Support for OpenFlow v1.0 Compliance Matrix for Statistics . . . 20

Table 7: Junos OS Support for OpenFlow v1.0 Compliance Matrix for Features . . . 21

Chapter 3

OpenFlow Operational Mode Commands . . . 33

Table 8: OpenFlow Operational Mode Commands . . . 33

Table 9: show openflow capability Output Fields . . . 34

Table 10: show openflow controller Output Fields . . . 38

Table 11: show openflow filters Output Fields . . . 40

Table 12: show openflow flows Output Fields . . . 43

Table 13: show openflow interfaces Output Fields . . . 46

Table 14: show openflow statistics flows Output Fields . . . 49

Table 15: show openflow statistics interfaces Output Fields . . . 52

Table 16: show openflow statistics packet Output Fields . . . 55

Table 17: show openflow statistics tables Output Fields . . . 58

Table 18: show openflow summary Output Fields . . . 60

(6)
(7)

Overview and Configuration

• Understanding Junos OS Support for OpenFlow v1.0 on page 7

• Installing Support for OpenFlow v1.0 on Devices Running Junos OS on page 9 • Configuring Support for OpenFlow v1.0 on Devices Running Junos OS on page 10 • Example: Enabling OpenFlow v1.0 on a Device Running Junos OS on page 12 • Junos OS Support for OpenFlow v1.0 Compliance Matrix on page 15

Understanding Junos OS Support for OpenFlow v1.0

• OpenFlow Overview on page 7 • OpenFlow Virtual Switches on page 8 • OpenFlow Interfaces on page 8 • OpenFlow Flows on page 9

OpenFlow Overview

OpenFlow is an open standard that permits you to control traffic and run experimental protocols in an existing network using a remote controller. The OpenFlow components consist of a controller, an OpenFlow or OpenFlow-enabled switch, and the OpenFlow protocol. The OpenFlow protocol is a Layer 2 protocol that permits an OpenFlow controller access to the data plane of an OpenFlow-enabled switch over an SSL or TCP/IP socket connection. Using OpenFlow, you can control traffic paths by creating, deleting, and modifying flow entries in each device along a path. Flow entries specify match conditions against which packets are compared, and a set of instructions that are applied to matching packets.

(8)

messages. The controller uses the OpenFlow protocol messages to add, delete, and modify flows on a switch.

For more information about OpenFlow, see the OpenFlow Consortium website at http://www.openflow.org/.

OpenFlow Virtual Switches

To isolate and control OpenFlow traffic on a device running Junos OS, you configure virtual switches. Each virtual switch configuration contains the set of ports participating in OpenFlow, the controller connection information, and the default action executed when a packet does not match a flow entry. You configure OpenFlow protocol information and virtual switches at the [edit protocols openflow] hierarchy level.

Depending on the platform, a default VLAN or bridge domain is assigned to each virtual switch. This VLAN or bridge domain acts as a logically separate flood domain, which isolates OpenFlow traffic from normal traffic. On MX Series 3D Universal Edge Routers, you must also configure a separate virtual switch routing instance at the [edit

routing-instances]hierarchy level.

Each virtual switch establishes an independent connection with the controller and is represented by a unique runtime datapath ID consisting of the management port MAC address and an internally assigned virtual switch ID. The controller and virtual switch connect to each other using an SSL or TCP/IP socket connection on the management plane. Thus, every switch managed by a controller needs to be connected to the management network (connected using the me or fxp management port) and should be reachable from the controller IP address.

After establishing a connection, the controller and virtual switch exchange echo request and reply messages as a keepalive mechanism. If the 5-second keepalive interval expires with no response, the connection is considered lost. The switch attempts to reestablish the connection for 10 seconds. If the connection cannot be established, the switch deletes normal flow entries, and after 30 seconds, purges flow entries that are installed in hardware.

OpenFlow Interfaces

You must configure interfaces participating in OpenFlow as Layer 2 interfaces. MX Series routers support ethernet-bridge encapsulation and protocol family bridge. EX Series Ethernet Switches and QFX Series switches support protocol family ethernet-switching. You configure interfaces on the router or switch at the [edit interfaces interface-name] hierarchy level.

(9)

OpenFlow Flows

For each ingress interface participating in OpenFlow, a single filter is created and applied to the interface in the input direction. The filter name is the concatenation of the interface name and an internally assigned virtual switch ID. The filter consists of one or more terms with match conditions and actions. OpenFlow flows are mapped to the filters as filter terms. OpenFlow controller requests to add, delete, and modify flows result in the addition, deletion, or modification of terms in the filter.

Each flow entry corresponds to a filter term entry. However, each flow entry might map to one or more filter terms depending on the match condition for the ingress port. If the ingress port is a wildcard match, the flow entry appears as a term in all of the OpenFlow interface filters. For example, suppose that the OpenFlow controller sends a request to add a new flow entry with a wildcard match for the ingress port field. In this case, the flow is added as a new filter term for all OpenFlow interfaces on that virtual switch. Filter terms are ordered based on the OpenFlow flow priority. Higher priority terms are installed above lower priority terms.

You can configure the default action for packets that do not match on any flow entry as either drop, which discards the packet, or packet-in, which accepts the packet and forwards it to the controller. The default action is specific to the OpenFlow virtual switch and is the same across all filters. If you do not explicitly configure the default action, the default is packet-in.

Each flow entry has an idle timeout and a hard timeout associated with it. The idle timeout is the number of seconds after which the flow entry is removed from the flow table provided there are no matching packets. The hard timeout is the number of seconds after which the flow entry is removed from the flow table regardless of the number of matching packets. When the controller sends a flow entry modification message

(OFPT_FLOW_MOD) to the switch, it can specify the idle timeout or hard timeout for that flow entry. The default idle timeout value is 0, which indicates that the flow entry does not time out. The minimum configurable idle timeout is 11 seconds. If the controller requests an idle timeout that is less than the minimum value, the switch rejects the flow modification message and a sends an error back to the controller.

Related Documentation

Installing Support for OpenFlow v1.0 on Devices Running Junos OS on page 9 •

• Configuring Support for OpenFlow v1.0 on Devices Running Junos OS on page 10 • Example: Enabling OpenFlow v1.0 on a Device Running Junos OS on page 12 • Junos OS Support for OpenFlow v1.0 Compliance Matrix on page 15

• OpenFlow Operational Mode Commands on page 33 • openflow (Protocols OpenFlow) on page 27

Installing Support for OpenFlow v1.0 on Devices Running Junos OS

(10)

software package is identified by the jsdn prefix, and the filename string begins with the following format:

jsdn-platformID-release where:

platformID is the identifier for the platform.Table 1 on page 10lists the supported devices and the corresponding identifiers for the software package.

release is the identifier for the Junos OS release, for example, 12.3.

Table 1: Software Packages for OpenFlow v1.0 Support

Supported Devices Package Platform MX240 jsdn MX

To install the OpenFlow v1.0 software package on a device running Junos OS: 1. Download the software package to the device.

2. Install the software package using the request system software add operational mode command.

user@host> request system software add path-to-jsdn-package

Related Documentation

Understanding Junos OS Support for OpenFlow v1.0 on page 7 •

• Configuring Support for OpenFlow v1.0 on Devices Running Junos OS on page 10 • Example: Enabling OpenFlow v1.0 on a Device Running Junos OS on page 12

Configuring Support for OpenFlow v1.0 on Devices Running Junos OS

• Configuring the OpenFlow Interfaces on page 10 • Configuring the OpenFlow Protocol on page 11

• Configuring the OpenFlow Routing Instance (MX Series) on page 11

Configuring the OpenFlow Interfaces

Configure all interfaces participating in OpenFlow as Layer 2 interfaces. On MX Series routers:

• Configure the physical link-layer encapsulation type and the logical interface protocol family.

[edit interfaces interface-name]

(11)

On EX Series and QFX Series switches:

• Configure the logical interface protocol family. [edit interfaces interface-name]

user@host# set unit 0 family ethernet-switching

Configuring the OpenFlow Protocol

To configure support for OpenFlow v1.0, create a virtual switch instance, and configure the controller information, participating interfaces, and optionally, the default action for packets that do not match a flow entry.

1. Configure the controller IP address and connection protocol. [edit protocols openflow switch switch-name]

user@host# set controller address address user@host# set protocol tcp

2. Specify all interfaces participating in OpenFlow. [edit protocols openflow switch switch-name] user@host# set interfaces interface-name1 user@host# set interfaces interface-name2

3. (Optional) Configure the default-action statement for packets that do not match on an existing flow entry.

If you do not configure the default-action statement, the default is packet-in. [edit protocols openflow switch switch-name]

user@host# set default-action (drop | packet-in) 4. (Optional) Configure OpenFlow traceoptions.

[edit protocols openflow]

user@host# set traceoptions flag all user@host# set traceoptions file file-name

Configuring the OpenFlow Routing Instance (MX Series)

On MX Series routers, configure each virtual switch as a separate routing instance using bridge domains and VLANs. This isolates the experimental OpenFlow traffic from the normal network traffic.

1. Configure the routing instance type as virtual switch. [edit routing-instances routing-instance-name] user@host# set instance-type virtual-switch 2. Configure the bridge domain name and VLAN ID.

[edit routing-instances routing-instance-name]

user@host# set bridge-domains bridge-domain-name vlan-id none

3. Configure the OpenFlow interfaces that will be bound to the routing instance. [edit routing-instances routing-instance-name]

(12)

user@host# set bridge-domains bridge-domain-name interface interface-name2 user@host# set bridge-domains bridge-domain-name interface interface-name3 The unicast routing table name for a routing instance is routing-instance-name.inet.0. For example, if you configure a routing instance with the name rt-bd-1, the corresponding IP unicast table is rt-bd-1.inet.0.

Related Documentation

Understanding Junos OS Support for OpenFlow v1.0 on page 7 •

• Installing Support for OpenFlow v1.0 on Devices Running Junos OS on page 9 • Example: Enabling OpenFlow v1.0 on a Device Running Junos OS on page 12 • OpenFlow Operational Mode Commands on page 33

• openflow (Protocols OpenFlow) on page 27 • [edit protocols openflow] Hierarchy Level on page 23

Example: Enabling OpenFlow v1.0 on a Device Running Junos OS

This example shows how to configure OpenFlow v1.0 support on an MX240 router running Junos OS.

• Requirements on page 12 • Overview on page 12 • Configuration on page 13

Requirements

• MX240 router running Junos OS Release 12.3 or later.

• OpenFlow interfaces are already configured with an IP address. • Router has a TCP connection to the controller.

• Router is connected to the management network through the fxp0 interface.

Overview

In this example, you configure three MX240 router interfaces, ge-1/0/0, ge-1/1/0, and xe-0/0/0, as OpenFlow interfaces . You first configure the interfaces as Layer 2 interfaces using ethernet-bridge encapsulation and protocol family bridge.

MX Series routers require a separate virtual switch routing instance to isolate the experimental OpenFlow traffic from the normal network traffic. This example configures a virtual switch routing instance, rt-bd-1, using instance type virtual-switch at the [edit routing-instances]hierarchy level. Within the routing instance, the bridge domain of-bridge includes all of the interfaces participating in OpenFlow.

(13)

must include all of the interfaces participating in OpenFlow. OpenFlow traffic will only ingress or egress from these interfaces.

The default-action statement indicates the action the switch should take for packets that do not have a matching flow entry. This example explicitly configures the default action for packets that do not have a matching flow entry as packet-in. If you omit the default-actionstatement, the default action is packet-in, which indicates that packets with no matching flow entry should be sent to the controller for processing.

This example also configures OpenFlow traceoptions. In this case, the flag all indicates that all OpenFlow events should be captured and logged. Since the example does not configure a specific filename for the log file, OpenFlow events are logged in the default OpenFlow log file /var/log/ofd.

Configuration

Step-by-Step

Procedure

Configure the OpenFlow interfaces as Layer 2 interfaces. [edit interfaces]

1.

user@host# set ge-1/0/0 encapsulation ethernet-bridge unit 0 family bridge user@host# set ge-1/1/0 encapsulation ethernet-bridge unit 0 family bridge user@host# set xe-0/0/0 encapsulation ethernet-bridge unit 0 family bridge 2. Configure the virtual switch routing instance.

[edit routing-instances]

user@host# set rt-bd-1 instance-type virtual-switch

user@host# set rt-bd-1 bridge-domains of-bridge vlan-id none user@host# set rt-bd-1 bridge-domains of-bridge interface ge-1/0/0.0 user@host# set rt-bd-1 bridge-domains of-bridge interface ge-1/1/0.0 user@host# set rt-bd-1 bridge-domains of-bridge interface xe-0/0/0.0 3. Configure the IP address of the OpenFlow controller.

[edit protocols openflow switch switch1]

user@host# set controller address 192.168.68.159

4. Configure the protocol for the connection to the OpenFlow controller. [edit protocols openflow switch switch1]

user@host# set protocol tcp

5. Configure the interfaces participating in OpenFlow. [edit protocols openflow switch switch1]

user@host# set ge-1/0/0.0 user@host# set ge-1/1/0.0 user@host# set xe-0/0/0.0

6. (Optional) Configure the default action for packets that do not have a matching flow entry.

[edit protocols openflow switch switch1] user@host# set default-action packet-in 7. (Optional) Configure OpenFlow traceoptions.

(14)

user@host# set traceoptions flag all

Results

From configuration mode, confirm your configuration by entering the show interfaces, show routing-instances, and show protocols openflow commands. If the output does not display the intended configuration, repeat the instructions in this example to correct the configuration.

user@host# show interfaces ge-1/0/0 { encapsulation ethernet-bridge; unit 0 { family bridge; } } ge-1/1/0 { encapsulation ethernet-bridge; unit 0 { family bridge; } } xe-0/0/0 { encapsulation ethernet-bridge; unit 0 { family bridge; } }

user@host# show routing-instances rt-bd-1 { instance-type virtual-switch; bridge-domains { of-bridge { vlan-id none; interface ge-1/0/0.0; interface ge-1/1/0.0; interface xe-0/0/0.0; } } }

user@host# show protocols openflow [edit protocols openflow]

(15)

traceoptions { flag all; }

Related Documentation

Understanding Junos OS Support for OpenFlow v1.0 on page 7 •

• Installing Support for OpenFlow v1.0 on Devices Running Junos OS on page 9 • Configuring Support for OpenFlow v1.0 on Devices Running Junos OS on page 10 • OpenFlow Operational Mode Commands on page 33

• openflow (Protocols OpenFlow) on page 27openflow on page 27 • [edit protocols openflow] Hierarchy Level on page 23

Junos OS Support for OpenFlow v1.0 Compliance Matrix

The following tables list the support for OpenFlow v1.0 messages, match conditions, wild cards, flow actions, statistics, and features.

• Table 2 on page 15lists support for messages. • Table 3 on page 18lists support for match conditions. • Table 4 on page 19lists support for wild cards. • Table 5 on page 19lists support for flow actions. • Table 6 on page 20lists support for statistics. • Table 7 on page 21lists support for features.

Table 2 on page 15lists the support for OpenFlow v1.0 messages.

(16)

Table 2: Junos OS Support for OpenFlow v1.0 Compliance Matrix for

Message Set (continued)

MX Specification Section Supported OFPT_GET_CONFIG_REPLY Not Supported OFPT_SET_CONFIG Supported OFPT_PACKET_IN Not Supported OFPT_PACKET_IN with buffer_id

Supported OFPT_FLOW_REMOVED Supported OFPT_PORT_STATUS Supported OFPT_PACKET_OUT Not Supported OFPT_PACKET_OUT with buffer_id

Supported OFPT_FLOW_MOD

Not Supported OFPT_FLOW_MOD with buffer_id

(17)

Table 2: Junos OS Support for OpenFlow v1.0 Compliance Matrix for

Message Set (continued)

(18)

Table 2: Junos OS Support for OpenFlow v1.0 Compliance Matrix for

Message Set (continued)

MX Specification Section Supported -1 1 Supported Supported Supported Not Supported Not Supported Supported Supported OFPT_FEATURES_REPLY: Datapath ID N_buffers N_tables OFPC_FLOW_STATS OFPC_TABLE_STATS OFPC_PORT_STATS OFPC_STP OFPC_IP_REASM OFPC_QUEUE_STATS OFPC_ARP_MATCH_IP 5.3.1 Supported Supported Supported Supported Supported Supported OFPT_FLOW_MOD: • OFPFC_ADD

• OFPFC_ADD with OFPFF_CHECK_OVERLAP • OFPFC_MODIFY

• OFPFC_MODIFY_STRICT • OFPFC_DELETE • OFPFC_DELETE_STRICT

5.3.3

Table 3 on page 18lists the support for OpenFlow v1.0 match conditions.

Table 3: Junos OS Support for OpenFlow v1.0 Compliance Matrix for Match

Conditions

MX Specification

Section

Supported dl_src (Ethernet source address)

5.2.3

Supported dl_dst (Ethernet destination address)

Supported dl_vlan (Input VLAN ID)

Supported dl_vlan_pcp (Input VLAN priority)

Supported dl_type (Ethernet frame type)

Supported nw_tos (IP TOS (6 bits DSCP))

Supported nw_proto (IP Protocol or lower 8 bits of ARP opcode)

Supported nw_src (IP source address)

Supported nw_dst (IP destination address)

(19)

Table 3: Junos OS Support for OpenFlow v1.0 Compliance Matrix for Match

Conditions (continued)

MX Specification Section Supported tp_dst (TCP/UDP destination port)

Supported Match all 12 tuples or a combination of tuples

Table 4 on page 19lists the support for OpenFlow v1.0 wild cards.

Table 4: Junos OS Support for OpenFlow v1.0 Compliance Matrix for Wild

Cards

MX Specification Section Supported OFPFW_IN_PORT 5.2.3 Supported OFPFW_DL_VLAN Supported OFPFW_DL_SRC Supported OFPFW_DL_DST Supported OFPFW_DL_TYPE Supported OFPFW_NW_PROTO Supported OFPFW_TP_SRC Supported OFPFW_TP_DST Supported No wild cards set. Match entire 12 tuple.

Table 5 on page 19lists the support for OpenFlow v1.0 flow actions.

Table 5: Junos OS Support for OpenFlow v1.0 Compliance Matrix for Flow

Actions

MX Specification Section Not Supported Not Supported Supported Supported Supported Supported Supported OFPAT_OUTPUT: OFPP_IN_PORT OFPP_TABLE OFPP_NORMAL OFPP_FLOOD (except input and STP disabled ports) OFPP_ALL

(except input port) OFPP_CONTROLLER OFPP_LOCAL

(20)

Table 5: Junos OS Support for OpenFlow v1.0 Compliance Matrix for Flow

Actions (continued)

MX Specification Section Supported OFPAT_SET_VLAN_VID Supported OFPAT_SET_VLAN_PCP Supported OFPAT_STRIP_VLAN Supported OFPAT_SET_DL_SRC Supported OFPAT_SET_DL_DST Supported OFPAT_SET_NW_SRC Supported OFPAT_SET_NW_DST Supported OFPAT_SET_NW_TOS Supported OFPAT_SET_TP_SRC Supported OFPAT_SET_TP_DST Not Supported OFPAT_ENQUEUE

Table 6 on page 20lists the support for OpenFlow v1.0 statistics.

Table 6: Junos OS Support for OpenFlow v1.0 Compliance Matrix for

Statistics

MX Specification Section Supported OFPST_DESC 5.3.5 Supported OFPST_FLOW Supported OFPST_AGGREGATE Supported OFPST_TABLE Supported OFPST_PORT Supported OFPST_QUEUE Gracefully ignored OFPST_VENDOR

(21)

Table 7: Junos OS Support for OpenFlow v1.0 Compliance Matrix for

Features

MX Specification Section Supported Flow Idle Timeout

5.3.3 Supported Hard Timeout Supported Flow Priority Not Supported Encryption. Controller and switch communicate

through a TLS connection

4.4

Related Documentation

• Understanding Junos OS Support for OpenFlow v1.0 on page 7

(22)
(23)

Statements

• [edit protocols openflow] Hierarchy Level on page 23

[edit protocols openflow] Hierarchy Level

protocols { openflow{ switchswitch-name { controller{ addressaddress; protocoltcp { portport; } roleequal; } default-actionaction; interfaces{ interface-name; } } traceoptions{

file <filename> <files number> <match regular-expression> <size size> <world-readable | no-world-readable>; flag flag; } } } Related Documentation

Understanding Junos OS Support for OpenFlow v1.0 on page 7 •

• Configuring Support for OpenFlow v1.0 on Devices Running Junos OS on page 10 • Example: Enabling OpenFlow v1.0 on a Device Running Junos OS on page 12 • openflow (Protocols OpenFlow) on page 27

(24)

address (Protocols OpenFlow)

Syntax address address;

Hierarchy Level [edit protocolsopenflow switchswitch-namecontroller] Release Information Statement introduced in Junos OS Release 12.3.

Description Specify the IPv4 address of the OpenFlow controller that will manage OpenFlow on that virtual switch. The switch establishes a connection to the controller using this address. Options address—IPv4 address of the OpenFlow controller.

Required Privilege Level

admin—To view this statement in the configuration. admin-control—To add this statement to the configuration. Related

Documentation

• Understanding Junos OS Support for OpenFlow v1.0 on page 7

• Configuring Support for OpenFlow v1.0 on Devices Running Junos OS on page 10 • controller (Protocols OpenFlow) on page 25

(25)

controller (Protocols OpenFlow)

Syntax controller { addressaddress; protocoltcp { portport; } roleequal; }

Hierarchy Level [edit protocolsopenflow switchswitch-name]

Release Information Statement introduced in Junos OS Release 12.3.

Description Configure the OpenFlow controller connection information for a virtual switch on an OpenFlow-enabled device running Junos OS.

Options The remaining statements are explained separately. Required Privilege

Level

admin—To view this statement in the configuration. admin-control—To add this statement to the configuration. Related

Documentation

• Understanding Junos OS Support for OpenFlow v1.0 on page 7

• Configuring Support for OpenFlow v1.0 on Devices Running Junos OS on page 10 • address (Protocols OpenFlow) on page 24

(26)

default-action (Protocols OpenFlow)

Syntax default-action (drop | packet-in);

Hierarchy Level [edit protocolsopenflow switchswitch-name]

Release Information Statement introduced in Junos OS Release 12.3.

Description Specify the action executed by the OpenFlow-enabled device for packets that do not match an existing flow entry.

Default If you do not include the default-action statement, the default action is packet-in. Options drop—Drop packets that do not match an existing flow entry.

packet-in—Accept packets that do not match an existing flow entry, and forward the packet to the controller.

Required Privilege Level

admin—To view this statement in the configuration. admin-control—To add this statement to the configuration. Related

Documentation

• Understanding Junos OS Support for OpenFlow v1.0 on page 7

• Configuring Support for OpenFlow v1.0 on Devices Running Junos OS on page 10 • openflow (Protocols OpenFlow) on page 27

• switch (Protocols OpenFlow) on page 30

interfaces (Protocols OpenFlow)

Syntax interfaces interface-name;

Hierarchy Level [edit protocolsopenflow switchswitch-name]

Release Information Statement introduced in Junos OS Release 12.3. Description Configure a Layer 2 interface as OpenFlow-enabled.

Options interface-name—Name of the interface. Required Privilege

Level

routing—To view this statement in the configuration. routing-control—To add this statement to the configuration. Related

Documentation

• Understanding Junos OS Support for OpenFlow v1.0 on page 7

• Configuring Support for OpenFlow v1.0 on Devices Running Junos OS on page 10 • openflow (Protocols OpenFlow) on page 27

(27)

openflow (Protocols OpenFlow)

Syntax openflow { switchswitch-name { controller{ addressaddress; protocoltcp { portport; roleequal; } default-actionaction { interfaces{ interface-name; } } traceoptions{

file <filename> <files number> <match regular-expression> <size size> <world-readable | no-world-readable>;

flag flag; }

}

Hierarchy Level [edit protocols]

Release Information Statement introduced in Junos OS Release 12.3. Description Configure support for OpenFlow v1.0.

Default OpenFlow is disabled on the device.

Options The remaining statements are explained separately. Required Privilege

Level

admin—To view this statement in the configuration. admin-control—To add this statement to the configuration. Related

Documentation

• Understanding Junos OS Support for OpenFlow v1.0 on page 7

• Configuring Support for OpenFlow v1.0 on Devices Running Junos OS on page 10 • Example: Enabling OpenFlow v1.0 on a Device Running Junos OS on page 12 • OpenFlow Operational Mode Commands on page 33

(28)

port (Protocols OpenFlow)

Syntax port port;

Hierarchy Level [edit protocolsopenflow switchswitch-namecontroller protocolprotocol]

Release Information Statement introduced in Junos OS Release 12.3.

Description Specify the OpenFlow controller port to which the OpenFlow-enabled virtual switch connects.

Options port—Numeric value specifying the OpenFlow controller port to which the device should connect.

Range: 1024 through 65535 Default: 6633

Required Privilege Level

admin—To view this statement in the configuration. admin-control—To add this statement to the configuration. Related

Documentation

• Understanding Junos OS Support for OpenFlow v1.0 on page 7

• Configuring Support for OpenFlow v1.0 on Devices Running Junos OS on page 10 • address (Protocols OpenFlow) on page 24

(29)

protocol (Protocols OpenFlow)

Syntax protocol tcp { portport;

}

Hierarchy Level [edit protocolsopenflow switchswitch-namecontroller] Release Information Statement introduced in Junos OS Release 12.3.

Description Specify the connection protocol that the OpenFlow-enabled device uses to connect to the OpenFlow controller.

Options tcp—Establish a TCP connection to the controller. The remaining statement is explained separately. Required Privilege

Level

admin—To view this statement in the configuration. admin-control—To add this statement to the configuration. Related

Documentation

• Understanding Junos OS Support for OpenFlow v1.0 on page 7

• Configuring Support for OpenFlow v1.0 on Devices Running Junos OS on page 10 • controller (Protocols OpenFlow) on page 25

• port (Protocols OpenFlow) on page 28 • protocol (Protocols OpenFlow) on page 29

role (Protocols OpenFlow)

Syntax role equal;

Hierarchy Level [edit protocolsopenflow switchswitch-namecontroller] Release Information Statement introduced in Junos OS Release 12.3.

Description Specify the role of each OpenFlow controller when configuring more than one controller for a virtual switch. A single controller configuration automatically puts the controller in active mode. In active mode, the virtual switch initiates a connection to the controller. Options equal—Configure active/active mode for two controllers.

Required Privilege Level

admin—To view this statement in the configuration. admin-control—To add this statement to the configuration. Related

Documentation

• Understanding Junos OS Support for OpenFlow v1.0 on page 7

(30)

switch (Protocols OpenFlow)

Syntax switchswitch-name {

controller{ addressaddress; protocoltcp { portport; roleequal; }

default-action(drop | packet-in); interfaces{

interface-name;

} }

Hierarchy Level [edit protocolsopenflow]

Release Information Statement introduced in Junos OS Release 12.3.

Description Configure an OpenFlow-enabled virtual switch. Each virtual switch establishes an independent connection with the controller.

Options switch-name—User-configured identifier for the virtual switch. The identifier should be 60 characters or less.

The remaining statements are explained separately. Required Privilege

Level

admin—To view this statement in the configuration. admin-control—To add this statement to the configuration. Related

Documentation

• Understanding Junos OS Support for OpenFlow v1.0 on page 7

• Configuring Support for OpenFlow v1.0 on Devices Running Junos OS on page 10 • controller (Protocols OpenFlow) on page 25

(31)

traceoptions (Protocols OpenFlow)

Syntax traceoptions {

file <filename> <files number> <match regular-expression> <size size> <world-readable | no-world-readable>;

flag flag; }

Hierarchy Level [edit protocols openflow]

Release Information Statement introduced in Junos OS Release 12.3. Description Define tracing operations for OpenFlow.

Default If you do not include this statement, no OpenFlow-specific tracing operations are performed.

Options file filename—Name of the file to receive the output of the tracing operation. All files are placed in the /var/log directory.

Default: /var/log/ofd

files number—(Optional) Maximum number of trace files. When a trace file named

trace-filereaches its maximum size, it is renamed and compressed to trace-file.0.gz. When trace-file again reaches its maximum size, trace-file.0.gz is renamed

trace-file.1.gz, and trace-file is renamed and compressed to trace-file.0.gz. This renaming scheme continues until the maximum number of trace files is reached. Then the oldest trace file is overwritten.

If you specify a maximum number of files, you also must specify a maximum file size with the size option and a filename.

Range: 2 through 1000 files Default: 10 files

flag flag—Tracing operation to perform. To specify more than one tracing operation, include multiple flag statements. You can include the following flags:

• all—All OpenFlow events.

• configuration—OpenFlow configuration events. • flow—OpenFlow flow events.

• filter—OpenFlow filter events.

• function—OpenFlow entry and exit events.

• packet-io—OpenFlow packet in and packet out events. • statistics—OpenFlow statistics request and reply events. • switch—OpenFlow switch events.

(32)

no-world-readable—(Optional) Disable unrestricted file access, which restricts file access to the owner. This is the default.

size size—(Optional) Maximum size of each trace file in bytes, kilobytes (KB), megabytes (MB), or gigabytes (GB). If you do not specify a unit, the default is bytes. If you specify a maximum file size, you also must specify a maximum number of trace files with the files option and a filename.

Syntax: size to specify bytes, sizek to specify KB, sizem to specify MB, or sizeg to specify GB

Range: 10240 through 1073741824 bytes Default: 128 KB

world-readable—(Optional) Enable unrestricted file access. Required Privilege

Level

admin—To view this statement in the configuration. admin-control—To add this statement to the configuration. Related

Documentation

• Understanding Junos OS Support for OpenFlow v1.0 on page 7

(33)

• OpenFlow Operational Mode Commands on page 33

OpenFlow Operational Mode Commands

Table 8 on page 33summarizes the operational mode commands that you can use to monitor and troubleshoot OpenFlow operations on an OpenFlow-enabled device running Junos OS. Commands are listed in alphabetical order.

Table 8: OpenFlow Operational Mode Commands

Command Task

show openflow capability

Display support information for OpenFlow features, actions, and match conditions on the device.

show openflow controller

Display OpenFlow controller information and status.

show openflow filters

Display information for filters bound to OpenFlow interfaces.

show openflow flows

Display OpenFlow flow information.

show openflow interfaces

Display physical characteristics and status information for interfaces participating in OpenFlow.

show openflow statistics flows

Display statistics for OpenFlow flow entries.

show openflow statistics interfaces

Display statistics for interfaces participating in OpenFlow.

show openflow statistics packet

Display statistics for Packet-in and Packet-out actions.

show openflow statistics summary

Display summary statistics for all OpenFlow flows.

show openflow statistics tables

Display statistics for OpenFlow flow tables.

show openflow summary

Display summary information for OpenFlow flows.

show openflow switch

(34)

show openflow capability

Syntax show openflow capability

<feature | match-condition | action>

Release Information Command introduced in Junos OS Release 12.3.

Description Display support information for OpenFlow features, actions, and match conditions on the device.

Options none—Display support information for all OpenFlow capabilities. action—(Optional) Display support information for OpenFlow actions. feature—(Optional) Display support information for OpenFlow features.

match-condition—(Optional) Display support information for OpenFlow match conditions. Required Privilege

Level

admin

Related Documentation

OpenFlow Operational Mode Commands on page 33 •

List of Sample Output show openflow capability on page 36 show openflow capability action on page 37 show openflow capability feature on page 37

show openflow capability match-condition on page 37

Output Fields Table 9 on page 34lists the output fields for the show openflow capability command. Output fields are listed in the approximate order in which they appear.

Table 9: show openflow capability Output Fields

Field Description Field Name

Supported Features—Indicates Support for the Following OpenFlow Features

Indicates if the switch supports OpenFlow flow statistics. Flow statistics

Indicates if the switch supports OpenFlow flow table statistics. Table statistics

Indicates if the switch supports OpenFlow port statistics. Port statistics

Indicates if the switch supports the 802.1D Spanning Tree Protocol. 802.1d spanning tree

Indicates if the switch supports reassembling IP fragments. Reassemble IP fragments

Indicates if the switch supports OpenFlow queue statistics. Queue statistics

Indicates if the switch supports matching on IP addresses in ARP packets.

(35)

Table 9: show openflow capability Output Fields (continued)

Field Description Field Name

Supported Match Conditions—Indicates Support for the Following OpenFlow Match Conditions

Displays support for matching against the ingress switch port. Switch input port

Displays support for matching against the VLAN identifier in the outermost VLAN tag.

VLAN vid

Displays support for matching against the Ethernet source address. Ethernet source address

Displays support for matching against the Ethernet destination address.

Ethernet destination address

Displays support for matching against the Ethernet frame type. Ethernet frame type

Displays support for matching against the IP protocol or lower 8 bits of the ARP opcode.

IP protocol

Displays support for matching against the TCP or UDP source port. TCP/UDP source port

Displays support for matching against the TCP or UDP destination port.

TCP/UDP destination port

Displays support for matching against the IP source address. IP source address

Displays support for matching against the IP destination address. IP destination address

Displays support for matching against the VLAN priority in the outermost VLAN tag.

VLAN priority

Displays support for matching against the IPv4 ToS bits. IP ToS (DSCP field)

Supported Actions—Indicates Support for the Following OpenFlow Actions

Displays support for forwarding the packet to a specified port. Output to switch port

Displays support for the optional Modify-Field action to modify the existing 802.1q VLAN ID of the outermost VLAN tag in the frame header or to add a new header with the VLAN ID if none exists. Set the 802.1q VLAN id

Displays support for the optional Modify-Field action to modify the existing 802.1q VLAN priority of the outermost VLAN tag in the frame header or to add a new header with the VLAN priority if none exists. Set the 802.1q priority

Displays support for the optional Pop-Tag action to remove the outermost VLAN header in the frame.

Strip the 802.1q header

Displays support for the optional Modify-Field action to modify the Ethernet source address field in the frame header.

(36)

Table 9: show openflow capability Output Fields (continued)

Field Description Field Name

Displays support for the optional Modify-Field action to modify the Ethernet destination address field in the frame header.

Ethernet destination address

Displays support for the optional Modify-Field action to modify the IP source address field and update the checksum in the packet header.

IP source address

Displays support for the optional Modify-Field action to modify the IP destination address field and update the checksum in the packet header.

IP destination address

Displays support for the optional Modify-Field action to modify the IPv4 ToS field and update the IP checksum in the packet header. IP ToS (DSCP)

Displays support for the optional Modify-Field action to modify the TCP or UDP source port field and update the checksum in the packet header.

TCP/UDP source port

Displays support for the optional Modify-Field action to modify the TCP or UDP destination port field and update the checksum in the packet header.

TCP/UDP destination port

Displays support for the optional Enqueue action to set the queue ID for the packet.

Output to queue

Sample Output

show openflow capability

user@host> show openflow capability Flow statistics: Yes

Table statistics: Yes Port statistics: Yes 802.1d spanning tree: No Reassemble IP fragments: Yes Queue statistics: Yes

Match IP addresses in ARP pkts: Yes Openflowd platform match condition support: Switch input port: Yes

VLAN vid: Yes

Ethernet source address: Yes Ethernet destination address: Yes Ethernet frame type: Yes

IP protocol: Yes

(37)

Output to switch port: Yes Set the 802.1q VLAN id Yes Set the 802.1q priority: Yes Strip the 802.1q header: Yes Ethernet source address: Yes Ethernet destination address: Yes IP source address: Yes

IP destination address: Yes IP ToS (DSCP): Yes

TCP/UDP source port: Yes TCP/UDP destination port: Yes Output to queue: Yes

show openflow capability action

user@host> show openflow capability action Openflowd platform action support: Output to switch port: Yes Set the 802.1q VLAN id Yes Set the 802.1q priority: Yes Strip the 802.1q header: Yes Ethernet source address: Yes Ethernet destination address: Yes IP source address: Yes

IP destination address: Yes IP ToS (DSCP): Yes

TCP/UDP source port: Yes TCP/UDP destination port: Yes Output to queue: Yes

show openflow capability feature

user@host> show openflow capability feature Openflowd platform feature support: Flow statistics: Yes

Table statistics: Yes Port statistics: Yes 802.1d spanning tree: No Reassemble IP fragments: Yes Queue statistics: Yes

Match IP addresses in ARP pkts: Yes show openflow capability match-condition

user@host> show openflow capability match-condition Openflowd platform match condition support: Switch input port: Yes

VLAN vid: Yes

Ethernet source address: Yes Ethernet destination address: Yes Ethernet frame type: Yes

IP protocol: Yes

(38)

show openflow controller

Syntax show openflow controller <address address> <switch switch-name>

Release Information Command introduced in Junos OS Release 12.3.

Description Display OpenFlow controller information and connection status. OpenFlow controllers are configured at the [edit protocols openflow switch switch-name] hierarchy level. Options none—Display information about all configured controllers.

address address—(Optional) Display information about the controller at the specified IP address.

switch switch-name—(Optional) Display information about all controllers associated with the specified virtual switch.

Required Privilege Level

admin

Related Documentation

OpenFlow Operational Mode Commands on page 33 •

• controller (Protocols OpenFlow) on page 25

List of Sample Output show openflow controller on page 39

show openflow controller address on page 39 show openflow controller switch on page 39

Output Fields Table 10 on page 38lists the output fields for the show openflow controller command. Output fields are listed in the approximate order in which they appear.

Table 10: show openflow controller Output Fields

Field Description Field Name

Socket on the controller to which the OpenFlow-enabled virtual switch connects.

Controller socket

IP address of the OpenFlow controller. Controller IP address

Protocol used by the switch to initiate a connection with the controller.

Controller protocol

User-specified port on the controller to which the OpenFlow-enabled virtual switch connects. Controller port

Status of the connection between the switch and the controller. Controller connection state

Number of connection attempts made by the virtual switch to the controller.

(39)

Table 10: show openflow controller Output Fields (continued)

Field Description Field Name

User-configured role of the controller. Controller role

Sample Output

show openflow controller

user@host> show openflow controller Openflowd controller information: Controller socket: 12

Controller IP address: 192.168.68.159 Controller protocol: tcp

Controller port: 6633

Controller connection state: up Number of connection attempt: 5 Controller role: equal

show openflow controller address

user@host> show openflow controller address 192.168.68.159 Openflowd controller information:

Controller socket: 12

Controller IP address: 192.168.68.159 Controller protocol: tcp

Controller port: 6633

Controller connection state: up Number of connection attempt: 5 Controller role: equal

show openflow controller switch

user@host> show openflow controller switch switch1 Openflowd controller information:

Controller socket: 12

Controller IP address: 192.168.68.159 Controller protocol: tcp

Controller port: 6633

(40)

show openflow filters

Syntax show openflow filters <interface-name> <switch switch-name>

Release Information Command introduced in Junos OS Release 12.3.

Description Display information for filters bound to OpenFlow interfaces. Options none—Display information for all filters.

interface-name—(Optional) Display filter information for the specified interface.

switch switch-name—(Optional) Display filter information for interfaces on the specified virtual switch. Required Privilege Level admin Related Documentation

OpenFlow Operational Mode Commands on page 33 •

List of Sample Output show openflow filters on page 41

show openflow filters interface on page 41 show openflow filters switch on page 41

Output Fields Table 11 on page 40lists the output fields for the show openflow filters command. Output fields are listed in the approximate order in which they appear.

Table 11: show openflow filters Output Fields

Field Description Field Name

OpenFlow identifier for the virtual switch associated with the interface to which the filter is bound.

Switch ID

Number of filters bound to OpenFlow interfaces on the virtual switch. Number of filters

Default action executed for packets that do not match any existing flow entries. Values arePACKET INorDROP.

Default action

Filter identifier consisting of the concatenation of the interface name and an internally assigned switch ID.

Filter name

Autogenerated string that identifies the filter. Filter index

Value indicating whether the filter is currently bound to the OpenFlow interface. Filter attached

Number of terms in the filter. Each term consists of match conditions and actions.

(41)

Table 11: show openflow filters Output Fields (continued)

Field Description Field Name

Number of unique active flow priorities in the filter. Number of

priorities

Filter term identifier, which consists of the filter name, switch ID, flow priority, and a sequence number.

Term name

Flow entry priority. Higher priority terms are installed above lower priority terms. Priority ID

Flow identifier associated with that filter. Flow ID

Number of packets that have matched a filter term, which is equivalent to a flow entry.

Number of packets

Number of bytes that have matched a filter term. Number of bytes

Sample Output

show openflow filters

user@host> show openflow filters

Switch Filter Filter Number of Number of Number of ID Index attached terms priorities packets 0 83886082 Yes 2 2 0 0 83886083 Yes 2 2 0 show openflow filters interface

user@host> show openflow filters interface ge-1/0/0.0 Switch ID: 0

Filter name: ge-1/0/0.0_0

Filter index: 83886082 Filter attached: Yes Number of terms: 2 Number of priorities: 2 Term name: ge-1/0/0.0_0:1^OF:9

Priority ID: 1 Flow ID: 4 Number of packets:0 Number of bytes:0 Term name: ge-1/0/0.0_0:32768^OF:7

Priority ID: 32768 Flow ID: 3 Number of packets:0 Number of bytes:0 show openflow filters switch

user@host> show openflow filters switch switch1

Switch ID: 0 Number of filters: 2 Default action: PACKET IN Filter name: ge-1/0/0.0_0

Filter index: 83886082 Filter attached: Yes Number of terms: 2 Number of priorities: 2

(42)

Switch ID: 0 Number of filters: 2 Default action: PACKET IN Filter name: ge-1/0/1.0_0

Filter index: 83886083 Filter attached: Yes Number of terms: 2 Number of priorities: 2

(43)

show openflow flows

Syntax show openflow flows <flow-id>

<switch switch-name>

Release Information Command introduced in Junos OS Release 12.3. Description Display information for OpenFlow flows.

Options none—Display information for all flows.

flow-id—(Optional) Display information only for the specified flow.

switch switch-name—(Optional) Display information only for the flows on the specified switch. Required Privilege Level admin Related Documentation

OpenFlow Operational Mode Commands on page 33 •

List of Sample Output show openflow flows on page 44 show openflow flows 3 on page 44 show openflow flows switch on page 45

Output Fields Table 12 on page 43lists the output fields for the show openflow flows command. Output fields are listed in the approximate order in which they appear.

Table 12: show openflow flows Output Fields

Field Description Field Name

Flow descriptor. Flow name

OpenFlow identifier for the virtual switch on which the flow resides. Switch ID

Flow table identifier from which the flow originated. Table ID

OpenFlow flow entry identifier. Flow ID

Flow entry priority. Packets match higher priority entries before matching lower priority entries.

Priority

Number of seconds after which the flow entry is removed from the flow table provided there are no matching packets.

Idle timeout

Number of seconds after which the flow entry is removed from the flow table regardless of the number of matching packets.

Hard timeout

(44)

Table 12: show openflow flows Output Fields (continued)

Field Description Field Name

Instruction set applied to a packet when it matches the flow entry. Action

Sample Output

show openflow flows

user@host> show openflow flows Flow name: ge-1/0/0.0_0:32766^OF:6

Switch ID: 0 Table ID: 1 Flow ID: 3

Priority: 32766 Idle timeout(in sec):0 Hard timeout(in sec): 0 Match: Input port: 1

Ethernet src addr: wildcard Ethernet dst addr: wildcard

Input vlan id: wildcard Input VLAN priority: wildcard Ether type: wildcard

IP ToS: wildcard IP protocol: wildcard IP src addr: wildcard IP dst addr: wildcard Source port: wildcard Destination port: wildcard Action: Output port 2,

Flow name: ge-1/0/1.0_0:32766^OF:7

Switch ID: 0 Table ID: 1 Flow ID: 4

Priority: 32766 Idle timeout(in sec):0 Hard timeout(in sec): 0 Match: Input port: 2

Ethernet src addr: wildcard Ethernet dst addr: wildcard

Input vlan id: wildcard Input VLAN priority: wildcard Ether type: wildcard

IP ToS: wildcard IP protocol: wildcard IP src addr: wildcard IP dst addr: wildcard Source port: wildcard Destination port: wildcard Action: Output port 3,

Flow name: xe-0/0/0.0_0:32766^OF:8

Switch ID: 0 Table ID: 1 Flow ID: 5

Priority: 32766 Idle timeout(in sec):0 Hard timeout(in sec): 0 Match: Input port: 3

Ethernet src addr: wildcard Ethernet dst addr: wildcard

Input vlan id: wildcard Input VLAN priority: wildcard Ether type: wildcard

IP ToS: wildcard IP protocol: wildcard IP src addr: wildcard IP dst addr: wildcard Source port: wildcard Destination port: wildcard Action: Output port 2, show openflow flows 3

user@host> show openflow flows 3 Flow name: ge-1/0/0.0_0:32766^OF:6

Switch ID: 0 Table ID: 1 Flow ID: 3

Priority: 32766 Idle timeout(in sec):0 Hard timeout(in sec): 0 Match: Input port: 1

Ethernet src addr: wildcard Ethernet dst addr: wildcard

(45)

Ether type: wildcard

IP ToS: wildcard IP protocol: wildcard IP src addr: wildcard IP dst addr: wildcard Source port: wildcard Destination port: wildcard Action: Output port 2, show openflow flows switch

user@host> show openflow flows switch switch1 Flow name: ge-1/0/0.0_0:32766^OF:6

Switch ID: 0 Table ID: 1 Flow ID: 3

Priority: 32766 Idle timeout(in sec):0 Hard timeout(in sec): 0 Match: Input port: 1

Ethernet src addr: wildcard Ethernet dst addr: wildcard

Input vlan id: wildcard Input VLAN priority: wildcard Ether type: wildcard

IP ToS: wildcard IP protocol: wildcard IP src addr: wildcard IP dst addr: wildcard Source port: wildcard Destination port: wildcard Action: Output port 2

Flow name: ge-1/0/1.0_0:32766^OF:7

Switch ID: 0 Table ID: 1 Flow ID: 4

Priority: 32766 Idle timeout(in sec):0 Hard timeout(in sec): 0 Match: Input port: 2

Ethernet src addr: wildcard Ethernet dst addr: wildcard

Input vlan id: wildcard Input VLAN priority: wildcard Ether type: wildcard

IP ToS: wildcard IP protocol: wildcard IP src addr: wildcard IP dst addr: wildcard Source port: wildcard Destination port: wildcard Action: Output port 3,

Flow name: xe-0/0/0.0_0:32766^OF:8

Switch ID: 0 Table ID: 1 Flow ID: 5

Priority: 32766 Idle timeout(in sec):0 Hard timeout(in sec): 0 Match: Input port: 3

Ethernet src addr: wildcard Ethernet dst addr: wildcard

Input vlan id: wildcard Input VLAN priority: wildcard Ether type: wildcard

(46)

show openflow interfaces

Syntax show openflow interfaces <interface-name> <switch switch-name>

Release Information Command introduced in Junos OS Release 12.3.

Description Display physical characteristics and status information for interfaces participating in OpenFlow.

Options none—Display information for all interfaces participating in OpenFlow.

interface-name—(Optional) Display information only for the specified interface. switch switch-name—(Optional) Display information only for those interfaces on the

specified virtual switch. Required Privilege

Level

admin

Related Documentation

OpenFlow Operational Mode Commands on page 33 •

• show openflow filters on page 40 • show openflow flows on page 43

• show openflow statistics interfaces on page 52

List of Sample Output show openflow interfaces on page 47

show openflow interfaces xe-0/0/0.0 on page 47 show openflow interfaces switch on page 47

Output Fields Table 13 on page 46lists the output fields for the show openflow interfaces command. Output fields are listed in the approximate order in which they appear.

Table 13: show openflow interfaces Output Fields

Field Description Field Name

OpenFlow identifier for the virtual switch to which the interface is bound. Switch Id

Name of the OpenFlow-enabled interface. Interface Name

OpenFlow identifier for the port. Interface port number

Ethernet address of the interface. Interface Hardware

Address

Bit rate and duplex mode of the interface. Interface speed

(47)

Table 13: show openflow interfaces Output Fields (continued)

Field Description Field Name

Current state of the physical interface. Interface state

Sample Output

show openflow interfaces

user@host> show openflow interfaces Switch Id: 0

Interface Name: ge-1/0/0.0 Interface port number: 1

Interface Hardware Address: a8:d0:e5:5b:9f:60 Interface speed: 1Gb Full-duplex

Interface media type: Fiber Interface state: Up

Switch Id: 0

Interface Name: ge-1/0/1.0 Interface port number: 2

Interface Hardware Address: a8:d0:e5:5b:9f:61 Interface speed: 1Gb Full-duplex

Interface media type: Fiber Interface state: Up

Switch Id: 0

Interface Name: xe-0/0/0.0 Interface port number: 3

Interface Hardware Address: a8:d0:e5:5b:9f:00 Interface speed: 10Gb Full-duplex

Interface media type: Fiber Interface state: Link down show openflow interfaces xe-0/0/0.0

user@host> show openflow interfaces xe-0/0/0.0 Switch Id: 0

Interface Name: xe-0/0/0.0 Interface port number: 3

Interface Hardware Address: a8:d0:e5:5b:9f:00 Interface speed: 10Gb Full-duplex

Interface media type: Fiber Interface state: Link down show openflow interfaces switch

user@host> show openfow interfaces switch switch1 Switch Id: 0

Interface Name: ge-1/0/0.0 Interface port number: 1

Interface Hardware Address: a8:d0:e5:5b:9f:60 Interface speed: 1Gb Full-duplex

Interface media type: Fiber Interface state: Up

Switch Id: 0

(48)

Interface Hardware Address: a8:d0:e5:5b:9f:61 Interface speed: 1Gb Full-duplex

Interface media type: Fiber Interface state: Up

Switch Id: 0

Interface Name: xe-0/0/0.0 Interface port number: 3

Interface Hardware Address: a8:d0:e5:5b:9f:00 Interface speed: 10Gb Full-duplex

(49)

show openflow statistics flows

Syntax show openflow statistics flows <flow-id>

<switch switch-name>

Release Information Command introduced in Junos OS Release 12.3. Description Display OpenFlow statistics for all flows.

Options none—Display flow statistics for all flows for all OpenFlow-enabled virtual switches.

flow-id—(Optional) Display flow statistics only for the specified flow.

switch switch-name—(Optional) Display flow statistics only for the specified switch. Required Privilege

Level

admin

Related Documentation

OpenFlow Operational Mode Commands on page 33 •

• show openflow flows on page 43

• show openflow statistics interfaces on page 52 • show openflow statistics packet on page 55 • show openflow statistics tables on page 58

List of Sample Output show openflow statistics flows on page 50 show openflow statistics flows 2 on page 50 show openflow statistics flows switch on page 51

Output Fields Table 14 on page 49lists the output fields for the show openflow statistics flows command. Output fields are listed in the approximate order in which they appear.

Table 14: show openflow statistics flows Output Fields

Field Description Field Name

OpenFlow identifier for the virtual switch on which the flow resides. Switch ID

Flow table identifier from which the flow originated. Table ID

OpenFlow flow entry identifier. Flow ID

Number of seconds the flow has been active. Duration(in sec)

Number of nanoseconds the flow has been active beyond theDuration(in sec). Duration(in nsec)

Flow entry priority. Packets match higher priority entries before matching lower priority entries.

(50)

Table 14: show openflow statistics flows Output Fields (continued)

Field Description Field Name

Number of seconds after which the flow entry is removed from the flow table provided there are no matching packets.

Idle timeout

Number of seconds after which the flow entry is removed from the flow table regardless of the number of matching packets.

Hard timeout

Number of packets that have matched this flow entry. Number of packets

Number of bytes that have matched this flow entry. Number of bytes

Fields against which the incoming packet is matched. Match

Instruction set applied to a packet when it matches the flow entry. Action

Sample Output

show openflow statistics flows

user@host> show openflow statistics flows

Switch ID: 0 Table ID: 1 Flow ID: 0

Duration(in sec): 207 Duration(in nsec): 4292301296

Priority: 32766 Idle timeout(in sec):0 Hard timeout(in sec): 0 Number of packets: 0

Number of bytes: 0 Match: IN_PORT,

Action: OUTPUT,

Switch ID: 0 Table ID: 1 Flow ID: 1

Duration(in sec): 207 Duration(in nsec): 4290678296

Priority: 32766 Idle timeout(in sec):0 Hard timeout(in sec): 0 Number of packets: 0

Number of bytes: 0 Match: IN_PORT,

Action: OUTPUT,

Switch ID: 0 Table ID: 1 Flow ID: 2

Duration(in sec): 207 Duration(in nsec): 4294553296

Priority: 32766 Idle timeout(in sec):0 Hard timeout(in sec): 0 Number of packets: 0

Number of bytes: 0 Match: IN_PORT, Action: OUTPUT, show openflow statistics flows 2

user@host> show openflow statistics flows 2

Switch ID: 0 Table ID: 1 Flow ID: 2

Duration(in sec): 212 Duration(in nsec): 3722571296

Priority: 32766 Idle timeout(in sec):0 Hard timeout(in sec): 0 Number of packets: 0

(51)

Match: IN_PORT, Action: OUTPUT, show openflow statistics flows switch

user@host> show openflow statistics flows switch switch1 Switch ID: 0 Table ID: 1 Flow ID: 0

Duration(in sec): 222 Duration(in nsec): 3824687296

Priority: 32766 Idle timeout(in sec):0 Hard timeout(in sec): 0 Number of packets: 0

Number of bytes: 0 Match: IN_PORT,

Action: OUTPUT,

Switch ID: 0 Table ID: 1 Flow ID: 1

Duration(in sec): 222 Duration(in nsec): 3823059296

Priority: 32766 Idle timeout(in sec):0 Hard timeout(in sec): 0 Number of packets: 0

Number of bytes: 0 Match: IN_PORT,

Action: OUTPUT,

Switch ID: 0 Table ID: 1 Flow ID: 2

Duration(in sec): 222 Duration(in nsec): 3826933296

Priority: 32766 Idle timeout(in sec):0 Hard timeout(in sec): 0 Number of packets: 0

Number of bytes: 0 Match: IN_PORT,

(52)

show openflow statistics interfaces

Syntax show openflow statistics interfaces <switch switch-name>

Release Information Command introduced in Junos OS Release 12.3.

Description Display OpenFlow statistics for all interfaces participating in OpenFlow. Options none—Display statistics for all interfaces participating in OpenFlow for all

OpenFlow-enabled virtual switches.

switch switch-name—(Optional) Display statistics only for those interfaces on the specified virtual switch. Required Privilege Level admin Related Documentation

OpenFlow Operational Mode Commands on page 33 •

• show openflow interfaces on page 46 • show openflow statistics flows on page 49 • show openflow statistics tables on page 58

List of Sample Output show openflow statistics interfaces on page 53 show openflow statistics interfaces switch on page 54

Output Fields Table 15 on page 52lists the output fields for the show openflow statistics interfaces command. Output fields are listed in the approximate order in which they appear.

Table 15: show openflow statistics interfaces Output Fields

Field Description Field Name

OpenFlow identifier for the virtual switch on which the flow resides. Switch ID

Name of the OpenFlow-enabled interface. Interface Name

OpenFlow identifier for the port. Port Number

Total number of packets received on OpenFlow interfaces. Num of rx pkts

Total number of packets sent out OpenFlow interfaces. Num of tx pkts

Total number of bytes received on OpenFlow interfaces. Num of rx bytes

Total number of bytes sent out OpenFlow interfaces. Num of tx bytes

References

Related documents

In the light of the findings and conclusions, it was recommended that the English Department, language faculty and all stakeholders of English language teaching

Themes which emerged from the collected data included the following: (1) an emphasis within South Sudanese culture on the importance of social support and religiosity or faith

Therefore, I want to see on paper, if we increase the size of the farm and cow herd, can we produce a sustainable income for a family and be able to work towards the ownership

the reputation is the next step, involving values-based judgment about the company on the part of the stakeholder: “If some beliefs and feelings about a company fit with a

2 Accuracy obtained for CS branch records by Naïve Bayes method Data Pre- processing Student Result Data Collection DM Approaches Rule Base Training of Model Training

Therefore, this thesis investigates the association between abdominal obesity, dietary factors, physical activity, and fetal nutrition and type 2 diabetes in China, based on the

An example of a multiple branched pipeline that is gener- ated from an EST Project Workflow and modeled in JUICE is shown in Figure 1. In this example, an assembly tool takes a

Prediction error of the final linear regression model for a Case 3b southbound event truck events with simulated damage conditions.. Simplified structure of input/output