So very quickly, I see 2 issues with these flows: 1) You are using wrong mask /8 when configuring the src and dst IP in the flows, it should be /32. 2) You also need extra flows to handle host ARP packets (unless you use static ARP entries in the hosts).
BR/Luis > On Jan 7, 2016, at 5:25 PM, Walid Aljoby <[email protected]> wrote: > > Hi Luis, > > Many thanks Daniel for your usual help! > > Yes Luis. Actually I don't want to use odl-l2switch to take care of network > flow. So What I did is as follows: > > 1- Mininet: sudo mn --topo single,3 --mac --switch=ovsk > --controller=remote,ip=192.168.56.101 > 2- Configured ODL karaf with only this feature: odl-openflowplugin, for > purpose of communication between the network and the controller. Now the > connection is valid. > 3- Situation: I wanted those three hosts connected to the switch ping each > other. So to achieve that I pushed some flows using RestConf API, but I got > into some inconsistency between Config and Operation data stores, as follows: > > In summary, two flows are added between host 1 and host 2. > ---------------------------------------------------------------------------- > Config Data store > > This XML file does not appear to have any style information associated with > it. The document tree is shown below. > <table xmlns="urn:opendaylight:flow:inventory"> > <id>0</id> > <flow> > <id>2</id> > <match> > <ipv4-source>10.0.0.2/8</ipv4-source> > <ipv4-destination>10.0.0.1/8</ipv4-destination> > <ethernet-match> > <ethernet-type> > <type>2048</type> > </ethernet-type> > </ethernet-match> > </match> > <table_id>0</table_id> > <priority>10</priority> > <idle-timeout>0</idle-timeout> > <flow-name>h2-h1</flow-name> > <instructions> > <instruction> > <order>0</order> > <apply-actions> > <action> > <order>0</order> > <output-action> > <output-node-connector>1</output-node-connector> > </output-action> > </action> > </apply-actions> > </instruction> > </instructions> > <hard-timeout>0</hard-timeout> > </flow> > <flow> > <id>1</id> > <match> > <ipv4-source>10.0.0.1/8</ipv4-source> > <ipv4-destination>10.0.0.2/8</ipv4-destination> > <ethernet-match> > <ethernet-type> > <type>2048</type> > </ethernet-type> > </ethernet-match> > </match> > <table_id>0</table_id> > <priority>10</priority> > <idle-timeout>0</idle-timeout> > <flow-name>h1-h2</flow-name> > <instructions> > <instruction> > <order>0</order> > <apply-actions> > <action> > <order>0</order> > <output-action> > <output-node-connector>2</output-node-connector> > </output-action> > </action> > </apply-actions> > </instruction> > </instructions> > <hard-timeout>0</hard-timeout> > </flow> > </table> > > ---------------------------------------------------------------------------- > Operational data store: > > This XML file does not appear to have any style information associated with > it. The document tree is shown below. > <table xmlns="urn:opendaylight:flow:inventory"> > <id>0</id> > <aggregate-flow-statistics xmlns="urn:opendaylight:flow:statistics"> > <packet-count>0</packet-count> > <flow-count>1</flow-count> > <byte-count>0</byte-count> > </aggregate-flow-statistics> > <flow> > <id>2</id> > <match> > <ipv4-source>10.0.0.2/32</ipv4-source> > <ipv4-destination>10.0.0.1/32</ipv4-destination> > <ethernet-match> > <ethernet-type> > <type>2048</type> > </ethernet-type> > </ethernet-match> > </match> > <table_id>0</table_id> > <priority>10</priority> > <cookie>0</cookie> > <idle-timeout>0</idle-timeout> > <instructions> > <instruction> > <order>0</order> > <apply-actions> > <action> > <order>0</order> > <output-action> > <output-node-connector>1</output-node-connector> > <max-length>0</max-length> > </output-action> > </action> > </apply-actions> > </instruction> > </instructions> > <flow-statistics xmlns="urn:opendaylight:flow:statistics"> > <packet-count>0</packet-count> > <duration> > <nanosecond>353000000</nanosecond> > <second>335</second> > </duration> > <byte-count>0</byte-count> > </flow-statistics> > <hard-timeout>0</hard-timeout> > </flow> > <flow> > <id>1</id> > <match> > <ipv4-source>10.0.0.0/8</ipv4-source> > <ipv4-destination>10.0.0.0/8</ipv4-destination> > <ethernet-match> > <ethernet-type> > <type>2048</type> > </ethernet-type> > </ethernet-match> > </match> > <table_id>0</table_id> > <priority>10</priority> > <cookie>0</cookie> > <idle-timeout>0</idle-timeout> > <instructions> > <instruction> > <order>0</order> > <apply-actions> > <action> > <order>0</order> > <output-action> > <output-node-connector>1</output-node-connector> > <max-length>0</max-length> > </output-action> > </action> > </apply-actions> > </instruction> > </instructions> > <flow-statistics xmlns="urn:opendaylight:flow:statistics"> > <packet-count>0</packet-count> > <duration> > <nanosecond>753000000</nanosecond> > <second>91</second> > </duration> > <byte-count>0</byte-count> > </flow-statistics> > <hard-timeout>0</hard-timeout> > </flow> > <flow-hash-id-map> > <hash> > Match [_ethernetMatch=EthernetMatch [_ethernetType=EthernetType > [_type=EtherType [_value=2048], augmentation=[]], augmentation=[]], > _layer3Match=Ipv4Match [_ipv4Destination=Ipv4Prefix [_value=10.0.0.0/8], > _ipv4Source=Ipv4Prefix [_value=10.0.0.0/8], augmentation=[]], > augmentation=[]]100 > </hash> > <flow-id>1</flow-id> > </flow-hash-id-map> > <flow-table-statistics xmlns="urn:opendaylight:flow:table:statistics"> > <active-flows>1</active-flows> > <packets-matched>296020</packets-matched> > <packets-looked-up>296038</packets-looked-up> > </flow-table-statistics> > </table> > ---------------------------------------------------------------------------- > This is in mininet terminal: > > mininet@mininet-vm:~$ sudo ovs-ofctl dump-flows s1 > NXST_FLOW reply (xid=0x4): > cookie=0x0, duration=76.928s, table=0, n_packets=0, n_bytes=0, idle_age=76, > priority=10,ip,nw_src=10.0.0.0/8,nw_dst=10.0.0.0/8 actions=output:1 > > > I am not clear why flow 1 is inconsistent in Confing and Operation data > stores. > > > Many thanks for your willing to help, and enthusiasm. > > > --- > Regards > Walid > > > From: Luis Gomez <[email protected]> > To: Daniel Farrell <[email protected]> > Cc: Walid Aljoby <[email protected]>; > [email protected] > Sent: Friday, January 8, 2016 8:31 AM > Subject: Re: [openflowplugin-dev] Redirecting OF questions > > Can we get a dump of config and operational flows? > > BR/Luis > > > > On Jan 7, 2016, at 7:26 AM, Daniel Farrell <[email protected] > > <mailto:[email protected]>> wrote: > > > > Hey OFPlugin devs, > > > > Directing some (fairly basic) questions to the most relevant experts. > > > > Thanks, > > > > Daniel Farrell > > Software Engineer, Red Hat SDN Team > > https://wiki.opendaylight.org/view/user:dfarrell07 > > <https://wiki.opendaylight.org/view/user:dfarrell07> > > > > ----- Original Message ----- > >> > >> > >> > >> Dear Daniel, > >> I will be very very grateful if you take a look into these questions: > >> I installed odl-l2switch-switch feature and made ping for the hosts > >> connected > >> to the switch. So it works fine(the hosts can reach(ping) each other).My > >> Question: because I want to create my own flow (define the way hosts can > >> reach each other), so I have not installed odl-l2switch-switch. Is that > >> right way? I just installed odl-openflowplugin. So I have two problems: > >> - when I add flows I have some inconsistency between Config and Operational > >> data stores. > >> > >> > >> 2- the network consists of three hosts connected to one switch, I installed > >> the rules as show in the photo, but the h1 could not reach h2? > >> > >> 3- where can I find please the document ion for these openflow tags? > >> because > >> some of them not found inside Openflow specification document. > >> > >> Thanks > >> Walid > >> > >> > >> From: Walid Aljoby <[email protected] > >> <mailto:[email protected]>> > >> To: Daniel Farrell <[email protected] <mailto:[email protected]>> > >> Sent: Thursday, January 7, 2016 3:11 AM > >> Subject: Re: Opendaylight Restconf with Mininet :) > >> > >> For sure, I am really appreciating your reply Daniel and I understand every > >> point. By the way, my previous reply was confusing because I thought the > >> word "Inline", like (I should ask these question online). Later I find your > >> answer inline, and realize it.So Many thanks again > >> My Best Regards, > >> Walid > >> > >> > >> From: Walid Aljoby <[email protected] > >> <mailto:[email protected]>> > >> To: Daniel Farrell <[email protected] <mailto:[email protected]>> > >> Sent: Thursday, January 7, 2016 3:00 AM > >> Subject: Re: Opendaylight Restconf with Mininet :) > >> > >> Many thanks Daniel. Actually I have posted that to ODL discussion group, > >> but > >> I have not received the reply. Sp because it is kind of urgent question to > >> pursue work in ODL, I ask you. > >> Anyway, your advises and comments are appreciated! > >> Thanks > >> walid > >> > >> From: Daniel Farrell <[email protected] > >> <mailto:[email protected]>> > >> To: Walid Aljoby <[email protected] <mailto:[email protected]>> > >> Sent: Thursday, January 7, 2016 2:12 AM > >> Subject: Re: Opendaylight Restconf with Mininet :) > >> > >> Inline > >> > >> Daniel Farrell > >> Software Engineer, Red Hat SDN Team > >> https://wiki.opendaylight.org/view/user:dfarrell07 > >> <https://wiki.opendaylight.org/view/user:dfarrell07> > >> > >> ----- Original Message ----- > >>> Dear Daniel, > >>> Wish you had a nice holiday and best of luck for a happy new year, and > >>> many > >>> thanks to your detailed previous help. > >>> > >>> I have these questions, I hope please to go through them for double-check > >>> and > >>> reply: > >>> Using pre-built version ODL lithium: > >>> > >>> 1- I created network with mininet and started to connect with ODL, I find > >>> out > >>> an error like (unable to connect to controller...). So I fixed it out by > >>> (feature:install odl-openflowplugin), So I am not sure why is it necessary > >>> to use this openflowplugin feature because my thinking that as long as ODL > >>> karaf is running, it should be automatically connected to mininet without > >>> any need to install any features.. please how is that CORRECT? > >>> > >> > >> All ODL functionally comes from loaded Karaf features. The default set > >> of installed features, a nearly empty Karaf container, only provides stuff > >> like the ability to SSH into the Karaf shell. > >> > >> You need ODL's SB OpenFlow logic to talk to MN switches via OF, which you > >> get by installing openflowplugin* Karaf features. > >> > >>> > >>> > >>> 2- I started to learn about Restconf(for example how to push flows using > >>> postman and curl linux tools), I have the following confusing problem: I > >>> followed these examples: > >>> > >>> https://wiki.opendaylight.org/view/Editing_OpenDaylight_OpenFlow_Plugin:End_to_End_Flows:Example_Flows, > >>> but I have two problems: a- sometimes the flows are displayed on > >>> localhost:8181/config/.., but could not be displayed on the switches > >>> (Mininet).. b- I have OVS which connect two hosts, I added a rule > >>> like if in-port=xm out-port=y in order to enable for example h1 ping h2, > >>> but > >>> it doesn't work until I added the reverse in-port=y out-port=x. So > >>> please let me know the logic, I will be so Happy! > >>> > >> > >> These docs look correct and relevant. > >> > >> https://wiki.opendaylight.org/view/OpenDaylight_OpenFlow_Plugin:End_to_End_Flows > >> > >> <https://wiki.opendaylight.org/view/OpenDaylight_OpenFlow_Plugin:End_to_End_Flows> > >> > >>> > >>> > >>> 3- My thinking to learn first Restconf then move to MD-SAL, how is that > >>> correct? > >>> > >> > >> I don't think it matters much. > >> > >>> > >>> 4- I created specific topology in mininet and I want to install specific > >>> flows using curl utility in XML format. So Do is it necessary to create > >>> any > >>> YANG model or directly install flows according to Opendaylight:inventory? > >>> May be the question not clear because I don't understand it very well, but > >>> the idea is to install specifc flows for forwarding the packets in my > >>> created topology through Restful API..!! > >> > >> When create flows via POSTs to ODL via RestConf, you're creating entries > >> in ODL's MD-SAL config data store. They then get populated to the switches, > >> and the updated state of the world is reflected in ODL's MD-SAL operational > >> data store. > >> > >>> > >>> I am very sorry for long email but I am in need for that dear Daniel. I > >>> will > >>> not forget your help for me at this stage, and I will not annoy much more > >>> with my quetions, I need that to push me quickly!!! > >> > >> Glad to help, but be reminded that the expected/normal/best way to get help > >> in open source communities is to use the relevant community mailing lists. > >> You'll find more relevant experts and typically get faster responses. > >> > >> All the best, > >> > >>> thank you in advance---- > >>> RegardsWalid From: Daniel Farrell <[email protected] > >>> <mailto:[email protected]>> > >>> To: Walid Aljoby <[email protected] <mailto:[email protected]>> > >>> Sent: Wednesday, December 16, 2015 2:35 AM > >>> Subject: Re: Learning Opendaylight Application Development > >>> > >>> Glad to help. :) > >>> > >>> Daniel Farrell > >>> Software Engineer, Red Hat SDN Team > >>> https://wiki.opendaylight.org/view/user:dfarrell07 > >>> <https://wiki.opendaylight.org/view/user:dfarrell07> > >>> > >>> ----- Original Message ----- > >>>> Dear Daniel, > >>>> I don't know how I thank your great help for me. Actually I have already > >>>> looked to the videos in YouTube for less than two minutes each, but I > >>>> ignored them because I am not sure whether they help me or just a wast of > >>>> time, but now you are really make me more confident where and how to > >>>> start > >>>> and dig deep on the ODL learning..Many Many thanks again!! > >>>> Wish you all the best in your career and life!! > >>>> ---My Best RegardsWalidWaleed Abdulwahab Yahya Al-Gobi | > >>>> adsc.illinois.edu > >>>> > >>>> | | > >>>> | | | | | | | | > >>>> | Waleed Abdulwahab Yahya Al-Gobi | adsc.illinois.eduWaleed Abdulwahab > >>>> | Yahya > >>>> | Al-Gobi is a SINGA graduate student who is working with ADSC Research > >>>> | Scientist Richard Ma. | > >>>> | | > >>>> | View on adsc.illinois.edu | Preview by Yahoo | > >>>> | | > >>>> | | > >>>> > >>>> > >>>> > >>>> From: Daniel Farrell <[email protected] > >>>> <mailto:[email protected]>> > >>>> To: walid aljoby <[email protected] > >>>> <mailto:[email protected]>> > >>>> Sent: Wednesday, December 16, 2015 12:14 AM > >>>> Subject: Re: Learning Opendaylight Application Development > >>>> > >>>> Hello Walid, > >>>> > >>>> Welcome to OpenDaylight! > >>>> > >>>> The primary source for I'd recommend for learning about ODL app > >>>> development is the Controller Core Functionality Tutorials. They > >>>> include both a wiki and recorded tutorial sessions from the most > >>>> recent OpenDaylight Summit. > >>>> > >>>> https://wiki.opendaylight.org/view/Controller_Core_Functionality_Tutorials:Application_Development_Tutorial > >>>> > >>>> <https://wiki.opendaylight.org/view/Controller_Core_Functionality_Tutorials:Application_Development_Tutorial> > >>>> > >>>> Feel free to ask additional questions, but note in most open source > >>>> communities you typically get more helpful and faster responses by > >>>> asking on public mailing list, vs directly 1-1. For OpenDaylight, > >>>> the Discuss or OpenDaylight Users lists would be best for general > >>>> questions like this. > >>>> > >>>> https://lists.opendaylight.org/mailman/listinfo/discuss > >>>> <https://lists.opendaylight.org/mailman/listinfo/discuss> > >>>> https://lists.opendaylight.org/mailman/listinfo/opendaylight-users > >>>> <https://lists.opendaylight.org/mailman/listinfo/opendaylight-users> > >>>> > >>>> Hope that helps! Welcome again to ODL! :) > >>>> > >>>> Daniel Farrell > >>>> Software Engineer, Red Hat SDN Team > >>>> https://wiki.opendaylight.org/view/user:dfarrell07 > >>>> <https://wiki.opendaylight.org/view/user:dfarrell07> > >>>> > >>>> ----- Original Message ----- > >>>>> Dear Sir, > >>>>> > >>>>> I am PhD student in National University of Singapore. > >>>>> Actually, I have only the basics of Java programming. I do not about > >>>>> Interactions between XML, YANG , OSGI, REST, these concepts I find it > >>>>> in > >>>>> Opendaylight software Architecture. > >>>>> You as expert in Opendaylight, could you please guide me to the > >>>>> effective way of learning Opendaylight for Application Develpment? For > >>>>> example, links to the effective videos or websites that help me build a > >>>>> strong knwoledge for develping applications using this software.. > >>>>> > >>>>> Many thanks in advance > >>>>> > >>>>> Best Regards > >>>>> ---- > >>>>> Walid > > >>>>> > >>>> > >>>> > >>>> > >>> > >>> > >> > >> > >> > >> > >> > >> > >> > >> > > _______________________________________________ > > openflowplugin-dev mailing list > > [email protected] > > <mailto:[email protected]> > > https://lists.opendaylight.org/mailman/listinfo/openflowplugin-dev > > <https://lists.opendaylight.org/mailman/listinfo/openflowplugin-dev> > > >
_______________________________________________ openflowplugin-dev mailing list [email protected] https://lists.opendaylight.org/mailman/listinfo/openflowplugin-dev
