Ask is moving to Stack Overflow and! Please use the "opendaylight" tag on either of these sites. This site is now in Read-Only mode


Openflow channel

asked 2015-02-17 01:38:41 -0700

harshahelium gravatar image

I have established connection between a mininet and Helium ODL controller . I would appreciate alot if someone can help me understand 1. What are the packets that are exchanged to establish the openflow channel ??? 2 .How does a typical ping works when i try to ping from one host to another connected to a switch in mininet??

edit retag flag offensive close merge delete

3 answers

Sort by ยป oldest newest most voted

answered 2015-02-17 07:58:59 -0700

faizan gravatar image

updated 2015-02-17 08:00:33 -0700

Hi, I m sharing my understanding which is as follow:

  1. The OpenFlow switch must be able to establish communication with a controller at a user-configurable IP address, using either a user-specified transport port or the default transport port which is 6633. When an OpenFlow connection is first established, each side of the connection must immediately send an HELLO message with the version field set to the highest OpenFlow protocol version supported by the sender. This Hello message may optionally include some OpenFlow elements to help connection setup. They also exchange ECHO messages to check the connection is still established. Some Packets are HELLO, ECHO REQUEST,ECHO REPLY. For depth knowledge, refer OpenFlow Switch Specification.
  2. When first packet comes to a switch i.e from host 1, it looks for the match field in there is any flow written on switch. Now suppose there is no pre active flows then packet is missed and that packet is sent to controller. At Controller your logics are implemented on the basis on the packet details captured in controller, create a flow and writes it on the switch also send the packet back to the port, packet processed according to the flow matched and next packet comes to switch if any some match critriea matches then action is taken on that packet else either goes to controller or may be dropped ( user define) . This is just a big picture, i will suggest you to go through some good tutorials.

Regards, Faizan

edit flag offensive delete publish link more

answered 2015-02-17 09:26:01 -0700

Vishal Thapar gravatar image
  1. This link covers exactly what you're looking for: Openflow channel is considered setup when version negotiation is completed and features request/reply is done.

  2. Answer to this depends on features you've installed on ODL. By default there would be no flows to handle your traffic. Generic sequence for any type of packets is: packetin to controller - controller adds flow(s) to handle subsequent packets - controller sends a packetout for given packet. In case of ping, it will be ARP request followed by ICMP packet. ARPhandler would typically respond to arp packets and L2Switch will forward the IP packets.

If you already have mininet+ODL setup I'd recommend running wireshark and capture all tcp port 6633 packets. All the questions you have asked will be answered by the packets you'll capture.

edit flag offensive delete publish link more

answered 2015-12-09 20:31:49 -0700

neeraj gravatar image

hi all

i have a query and problem that my open flow switch can send the echo request and echo receive the echo reply. But the switch is not able to respond to the echo request that come from the controller. Can someone help me????????????????

edit flag offensive delete publish link more
Login/Signup to Answer

Question Tools

1 follower


Asked: 2015-02-17 01:38:41 -0700

Seen: 563 times

Last updated: Dec 09 '15