Questions tagged [openflow]

OpenFlow is a communications protocol that gives access to the forwarding plane of a network switch or router over the network

The most common and widely deployed southbound interface towards SDN (Software Defined Networking) devices is known as the OpenFlow (OF) protocol. This protocol were originally developed at Stanford university during the Ethane project, but has become a de facto industry standard. In later years, the protocol has come under control and development from the Open Networking Foundation (ONF).

A secure socket layer (SSL) (or TSL) connection is set up between an SDN controller and the OF device. Then the OF protocol is used to push OF rules to the flow tables of that device. These rules will have match fields, and action fields. New packets that arrive will be checked towards the flow tables and if a match is found, the corresponding action to that match will be implmented (e.g. outputport, drop, decrement ttl, pop tag etc). If the packet doesn't match any of the flow tables (which could be multiple in a pipeline fashion), it will be encapsulated and sent to the controller. The packet will be processed at the controller and will then be returned to the switch together with a new flow rule. New flow rules will also be sent to other devices in the network that the SDN controller controls. This way a 'path' will be created for the flow all the way through the network. Later revisions of the OF protocol also implments support for group tables and meter tables.

Resources

361 questions
7
votes
2 answers

Understanding Ryu OpenFlow Controller, mininet, WireShark and tcpdump

I am a newbie to OpenFlow and SDN. I need help setting up the Ryu OpenFlow controller on a Ubuntu or Debian machine and understand a basic Ryu application. Note: this question already has an answer.
U. Muneeb
  • 599
  • 5
  • 21
6
votes
6 answers

Flow based routing and openflow

This may not be the typical stackoverflow question. A colleague of mine has been speculating that flow-based routing is going to be the next big thing in networking. Openflow provides the technology to use low cost switches in large application,…
6
votes
1 answer

What if there are multiple forwarding rules for the same flow in the Openflow switch?

I am trying to use the POX controller to control the path of flows. I know that the Open vSwitch will choose the forwarding rules that have the highest priority. But what will happen if I insert a new forwarding rule for the existing flow with the…
lzhou008
  • 63
  • 7
6
votes
5 answers

software-defined networking & OpenFlow

I'm trying to dive into these new concepts, SDN and OpenFlow. One thing that is not clear to me, is how the traditional routing (OSPF, BGP etc.) done in SDN, or it is completely gone and replaced with some lightweight mechanisms instead? I would…
Mark
  • 4,824
  • 5
  • 38
  • 85
5
votes
4 answers

What alternatives SDN controllers to POX are available?

I would like to get your advice about the best open-source SDN controller available. I want to implement and test some ideas I have in my research so I need to use a simulation such as Mininet. In fact, I am familiar with mininet and able to deal…
Friddy Joe
  • 147
  • 2
  • 11
4
votes
2 answers

How are port numbers are determined in mininet?

I have a network similar to the one in the picture below. This is the python code for the network: net.addLink(s1, s2) net.addLink(s2, s3) net.addLink(s3, s4) net.addLink(s4, s1) net.addLink(s1, h1) net.addLink(s3, h2) How would I go about…
4
votes
2 answers

The Difference between ovs-vsctl and ovs-dpctl

If I am setting up an switch device to be controlled via OpenFlow, what are the conditions to use ovs-dpctl versus ovs-vsctl? The man page for ovs-dpctl says to use ovs-vsctl if ovs-vswitchd is used. So what circumstances would you uses…
AlanObject
  • 8,408
  • 18
  • 72
  • 122
4
votes
0 answers

OMNeT++ openflow wireless

i'm trying to integrate a wireless card into openflow switch(i wanna simulate a vanet with openflow, so i need wireless communications) this is the code of the switch package openflow.nodes; import openflow.*; import…
4
votes
3 answers

Virtual switch using SDN

I was going through SDN controllers and OpenFlow implementation. I was wondering if SDN could be used to create a virtual switch by combining the capabilities of several switches within a data center. 1) Can any of you help me with this? 2) Are…
3
votes
1 answer

ovs-ofctl doen not work - connection refused

I am following openflow tutorial on openflow tutorial. I am using mininet and ryu controller and openvswitch version 2.8.0. When I try to use command: sudo ovs-ofctl show s1 It gives error as below: asd@asd:~/ryu/ryu/mpls$ sudo ovs-ofctl show…
Ashwin
  • 63
  • 7
3
votes
1 answer

opendaylight: How to view config database

I am using OpenDaylight Carbon release and the openflow plugin. I am writing code to install a flow. The flow gets written to MDSAL and picked up and installed by the Southbound plugin. I want to see what is in the config database for the switch.…
3
votes
1 answer

Difference between instructions and actions in OpenFlow

In OpenFlow protocol we have a flow table (or multiple flow tables). Each flow table in the switich contains a set of flow entries. Each flow entry contains header fields, counters and a set of instructions or actions to be applied. Instrucions are…
Filip Kowalski
  • 187
  • 1
  • 2
  • 11
3
votes
1 answer

How correctly convert integer to bitstring?

I have a question: using new libs (loom, ofs_handler, of_driver) I need to send settings message to switch. I have to create record like this: -record(ofp_field, { class = openflow_basic :: ofp_field_class(), name ::…
3
votes
1 answer

POX in mininet: What does event.parsed give in pox? What is parse.next?

In l3_learning.py, there is a method in class l3_switch named _handle_PacketIn. Now I understand that this event is when a switch contacts controller when it receives a packet corresponding to which it has no entries in its table. What I don't…
3
votes
1 answer

Setting ICMP match with POX controller

I'm trying to add a flow entry to a switch using POX controller, my code is: fm = of.ofp_flow_mod() fm.match.in_port = 1 fm.priority = 33001 fm.match.dl_type = 0x800 fm.match.nw_src = IPAddr("10.0.0.1") fm.match.nw_dst =…
Daniel
  • 430
  • 4
  • 11
1
2 3
24 25