Mehmet, Would you happen to have the log from FlowVisor when this happens?
Cheers. -- Ali On Apr 7, 2013, at 8:09 PM, mehmet fatih Aktaş <mfatihak...@gmail.com> wrote: > Hi Ali, > > This message occurs both at the initial connection and for any flowmod from > the controller. > FlowSpace config code: > fvctl -f fvpasswd_file add-slice cnt1slice tcp:192.168.56.1:9001 mfa > fvctl -f fvpasswd_file add-flowspace cnt1flowspace all 20 tp_dst=5000 > cnt1slice=7 > and the important parts of FV config file: > "Slice": { > "contact_email": "mfa", > "admin_status": true, > "creator": "fvadmin", > "passwd_salt": "2127467110", > "drop_policy": "exact", > "config_name": "default", > "max_flow_rules": -1, > "name": "cnt1slice", > "controller_hostname": "192.168.56.1", > "controller_port": 9001, > "flowmap_type": "federated", > "passwd_crypt": "702b812c89fe58799ec2c979755d52a9", > "lldp_spam": false > } > "FlowSpaceRule": > { > "id": 30, > "forced_queue": -1, > "tp_dst": 5000, > "wildcards": 4194175, > "priority": 20, > "name": "cnt1flowspace", > "queue_id": [], > "dpid": "all_dpids", > "slice_action": [ > { > "cnt1slice": 7 > } > ] > } > __________________________________ > The controller code to send flowmod; > msg = of.ofp_flow_mod() > msg.priority = 10 > msg.match.dl_type = 0x800 > msg.match.nw_src = IPAddr("10.0.0.1") > msg.match.nw_dst = IPAddr("10.0.0.2") > msg.actions.append(of.ofp_action_output(port = o_port)) > connection.send(msg) > > > Mehmet Fatih Aktas > > > On Sun, Apr 7, 2013 at 10:56 PM, Ali Al-Shabibi <ali.al-shab...@stanford.edu> > wrote: > Hi Mehmet, > > Does this message occur one at the initial connection or does it occur for > any flowmod from the controller? > > If it is the latter could you post you flowspace config and an example if the > flowmod you are sending. > > Cheers. > > -- > Ali > > On Apr 7, 2013, at 7:49 PM, mehmet fatih Aktaş <mfatihak...@gmail.com> wrote: > > > After configuring a slice:slice1_controller1 by adding a FlowSpace which > > includes a <match> field e.g. tp_dst=5000, > > controller1 is giving "OFPET_FLOW_MOD_FAILED (3), OFPFMFC_EPERM (2)" error > > whenever a flow_mod message is sent to any connected switch. > > If the FlowSpace does not include any such <match> rule (i.e. any) then > > this error does not occur. > > > > Controller: pox > > Switches: Mininet virtual switches > > FV version: FlowVisor 1.0.0 obtained directly from source > > > > Any idea or comment would be highly appreciated. > > Thanks. > > > > Mehmet Fatih Aktas > > > > > > > > On Thu, Apr 4, 2013 at 11:20 AM, mehmet fatih Aktaş <mfatihak...@gmail.com> > > wrote: > > Hi Ali, > > > > I am getting another strange error so wanted to share here. > > By using new JSON api, configured FV as; > > > > fvctl -f fvpasswd_file add-flowspace myflowspace1 all 1 any myslice1=6 > > fvctl -f fvpasswd_file add-flowspace myflowspace2 all 10 tp_dst=1000 > > myslice2=6 > > > > It created the FlowSpaces correctly, as can be seen from "list-flowspace" > > Configured Flow entries: > > {"force-enqueue": -1, "name": "myflowspace1", "slice-action": > > [{"slice-name": "myslice1", "permission": 6}], "queues": [], "priority": 1, > > "dpid": "all_dpids", "id": 12, "match": {"wildcards": 4194303}} > > {"force-enqueue": -1, "name": "myflowspace2", "slice-action": > > [{"slice-name": "myslice2", "permission": 6}], "queues": [], "priority": > > 10, "dpid": "all_dpids", "id": 13, "match": {"wildcards": 4194175, > > "tp_dst": 1000}} > > > > When I run the controller for myslice1 it connects to sws successfully but > > when I run the controller for myslice2 it gives sw-connection error for > > every sw: (This following log message is just for sw_dpid: ::04) > > > > ERROR:openflow.of_01:[00-00-00-00-00-04 1] OpenFlow Error: > > [00-00-00-00-00-04 1] Error: header: > > [00-00-00-00-00-04 1] Error: version: 1 > > [00-00-00-00-00-04 1] Error: type: 1 (OFPT_ERROR) > > [00-00-00-00-00-04 1] Error: length: 84 > > [00-00-00-00-00-04 1] Error: xid: 0 > > [00-00-00-00-00-04 1] Error: type: OFPET_FLOW_MOD_FAILED (3) > > [00-00-00-00-00-04 1] Error: code: OFPFMFC_EPERM (2) > > [00-00-00-00-00-04 1] Error: datalen: 72 > > [00-00-00-00-00-04 1] Error: 0000: 01 0e 00 48 00 00 01 02 00 10 00 1f 00 > > 00 00 00 ...H............ > > [00-00-00-00-00-04 1] Error: 0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 > > 00 00 00 ................ > > [00-00-00-00-00-04 1] Error: 0020: 00 00 00 00 00 00 00 00 00 00 00 00 00 > > 00 00 00 ................ > > [00-00-00-00-00-04 1] Error: 0030: 00 00 00 00 00 00 01 00 00 03 00 00 00 > > 00 80 00 ................ > > [00-00-00-00-00-04 1] Error: 0040: ff ff ff ff ff ff 00 00 > > ........ > > INFO:openflow.of_01:[00-00-00-00-00-04 1] connected > > Connection [00-00-00-00-00-04 1] > > ________________________________________________________ > > Despite the error, sws seem to be connected to controller and slicing logic > > seems to work fine. > > Just wondering what might cause this error log. > > > > Mehmet Fatih Aktas > > > > > > > > > > On Wed, Apr 3, 2013 at 8:00 PM, mehmet fatih Aktaş <mfatihak...@gmail.com> > > wrote: > > Hi Ali, > > > > Thanks for letting me know about this. I created an issue and did my best > > to follow the guidelines you sent me. > > > > I will try to use old XMLRPC API in the meantime. Thanks for writing the > > steps for that. > > Regards. > > > > Mehmet Fatih Aktas > > > > > > > > On Wed, Apr 3, 2013 at 5:58 PM, Ali Al-Shabibi > > <ali.al-shab...@stanford.edu> wrote: > > Hi Mehmet, > > > > This is a bug with the new JSON api. Could you please create an issue for > > it and I will address it ASAP. > > > > In the meantime, you can add your flowspace using the old XMLRPC API. To do > > this, follow these steps: > > > > 0. Backup your config if you have things you don't want to lose. > > 0.1 fvctl save-config /etc/flowvisor/config.json > > 1. Re-enable the XMLRPC interface > > 1.01 Stop flowvisor > > 1.1 edit the /etc/flowvisor/config.json > > 1.2 set api_webserver_port to 8081 > > 1.3 run fvconfig load /etc/flowvisor/config.json > > 1.4 start flowvisor > > 2. Add your flowspace using the fvctl-xml command. > > 2.1 fvctl-xml --url=https://localhost:8081 addFlowSpace any 10 > > nw_dst=10.0.0.255/32 Slice:mySlice2=7 > > > > Apologies for this, we will fix this soon. Please create an issue for this > > on https://github.com/OPENNETWORKINGLAB/flowvisor/issues?state=open and > > follow these steps as much as possible -> > > https://github.com/OPENNETWORKINGLAB/flowvisor/wiki/Filing-New-Issues-or-bugs > > > > Cheers. > > > > -- > > Ali > > > > On Apr 3, 2013, at 2:24 PM, mehmet fatih Aktaş <mfatihak...@gmail.com> > > wrote: > > > > > Ali, I will try to follow another approach similar to what you suggested. > > > Your advice helped me a lot thank you very much. > > > > > > I have another simple question: I am configuring FV as > > > fvctl -f fvpasswd_file add-flowspace myflowspace1 all 1 any myslice1=7 > > > fvctl -f fvpasswd_file add-flowspace myflowspace2 all 10 > > > nw_dst=10.0.0.255/32 myslice2=7 > > > > > > As far as I understand, this means the packets not matching; > > > nw_dst=10.0.0.255/32, should not be forwarded to myslice2 but to > > > myslice1. However, again all of the packets are issued to myslice2 > > > because of its respectively high priority, I guess. > > > > > > Actually this behavior expected because after FV is getting configured > > > such, then I "list-flowspace" and it gives: > > > Configured Flow entries: > > > {"force-enqueue": -1, "name": "myflowspace1", "slice-action": > > > [{"slice-name": "myslice1", "permission": 6}], "queues": [], "priority": > > > 1, "dpid": "all_dpids", "id": 296, "match": {"wildcards": 4194303}} > > > {"force-enqueue": -1, "name": "myflowspace2", "slice-action": > > > [{"slice-name": "myslice2", "permission": 6}], "queues": [], "priority": > > > 10, "dpid": "all_dpids", "id": 297, "match": {"wildcards": 4194303}} > > > > > > As this log shows, there is no difference at the "matching" fields. So I > > > think, either i am doing sth wrong with nw_dst=10.0.0.255/32 or it is not > > > working right. > > > (Because when add another match e.g. in_port=3, it is showing this in > > > myflowspace2 match field differently from that of myflowspace1) > > > > > > Any help would be highly appreciated. Thanks for the time. > > > > > > Mehmet Fatih Aktas > > > > > > > > > > > > On Wed, Apr 3, 2013 at 4:18 PM, Ali Al-Shabibi > > > <ali.al-shab...@stanford.edu> wrote: > > > [Responses inline] > > > > > > > After I created the slices as I wrote in the previous email; first I am > > > > running controller:8002, then 3 sws are not getting connected but only > > > > the sw whose dpid is added with the last flowspace entry. e.g. if the > > > > FV is configured such that > > > > fvctl -f fvpasswd_file add-slice myslice1 tcp:192.168.56.1:8001 mfa > > > > fvctl -f fvpasswd_file add-slice myslice2 tcp:192.168.56.1:8002 mfa > > > > > > > > fvctl -f fvpasswd_file add-flowspace myflowspace1 all 1 any myslice1=7 > > > > fvctl -f fvpasswd_file add-flowspace myflowspace2 00:00:00:00:00:02 3 > > > > any myslice2=7 > > > > fvctl -f fvpasswd_file add-flowspace myflowspace2 00:00:00:00:00:03 3 > > > > any myslice2=7 > > > > fvctl -f fvpasswd_file add-flowspace myflowspace2 00:00:00:00:00:01 3 > > > > any myslice2=7 > > > > Then only sw_dpid:::01 is connected to myslice2. I listed FV datapaths > > > > and it is showing; > > > > Connected switches: > > > > 1 : 00:00:00:00:00:00:00:01 > > > > 2 : 00:00:00:00:00:00:00:02 > > > > 3 : 00:00:00:00:00:00:00:03 > > > > 4 : 00:00:00:00:00:00:00:04 > > > > So there is no connectivity problem. Also as you suggested, I traced > > > > the OF packet exchanges between the sws and the controllers, but for > > > > this case, the connection messages (Hello, Features Request, Set Config > > > > etc.) are exchanged for only connected sw_dpid:::01. > > > > > > > > > > Are you sure flowvisor is connecting dpid 0x01 to myslice2? From your > > > description I understand that initially only controller :8001 is running. > > > Therefore, FlowVisor will create a connection for dpid 0x01 to myslice1 > > > only. So it is normal that you only see traffic for dpid 0x01. Does this > > > make sense to you? > > > > > > > > > > > >Slicing on the dpid only will be tricky because having two entire > > > > >datapaths in two different slices is nearly impossible, you need some > > > > >other >variable to discriminate on. I don't know what kind of virtual > > > > >subnets you want to build, but have you considered slicing on IPs or > > > > >even >vlans? Another alternative which is quite simple is to slice on > > > > >a combination of dpids and ports. > > > > This is a good suggestion, thanks, but what I want to have is sligthly > > > > more dynamic way of slicing the network by using FlowVisor. That is why > > > > I was trying to go for fine-grained manner of slicing: by specifying > > > > dpids individually for each slice. Also I am not trying to slice the > > > > datapath entirely here. > > > > Do you have any idea that might be useful to achieve this type of > > > > slicing else I will try to follow what you suggested, vlan or IP > > > > slicing. > > > > Thanks. > > > > > > > > > > Dpid slicing isn't very fine grained because once you allocate a dpid to > > > a slice (ie. which no other discriminant), the flowspace (and therefore > > > the slice it is in) with the highest priority will always have control of > > > that dpid. From what I can tell, VLAN or IP (or MAC) slicing is your best > > > bet here. > > > > > > > Mehmet Fatih Aktas > > > > > > > > > > > > > > > > On Wed, Apr 3, 2013 at 2:26 PM, Ali Al-Shabibi > > > > <ali.al-shab...@stanford.edu> wrote: > > > > Hi Mehmet, > > > > > > > > For your instability issue could you check that the connection between > > > > the switches and flowvisor is stable. That'll give us a better idea of > > > > where to start looking. You can verify this by running fvctl > > > > list-datapaths and confirming that all 4 switches remain connected. If > > > > they are always connected then you should probably capture a packet > > > > trace between flowvisor and the controllers to see what is actually > > > > going on. This can be done with wireshark. > > > > > > > > > > > > > > > > > > Also, even though the flowspaces of myslice1&2 are successfully > > > > > created and all switches are getting connected successfully, FV does > > > > > not send the packet_ins to both slice switches but only to one e.g. > > > > > controller:8001. > > > > > > > > > > > > > So flowvisor does not do this. It will only forward control traffic to > > > > one slice. In your case myslice1 takes precedence because it has a > > > > higher priority and matches all dpids. > > > > > > > > > Overall, what i am trying to do is to slice the network into virtual > > > > > subnets, and here i explained the problems I had during doing that. > > > > > What I am doing may not be the best way, I would appreciate any help > > > > > or comment. > > > > > > > > Slicing on the dpid only will be tricky because having two entire > > > > datapaths in two different slices is nearly impossible, you need some > > > > other variable to discriminate on. I don't know what kind of virtual > > > > subnets you want to build, but have you considered slicing on IPs or > > > > even vlans? Another alternative which is quite simple is to slice on a > > > > combination of dpids and ports. > > > > > > > > Let me know if this helps. > > > > > > > > > Thanks for the time. > > > > > > > > > > Mehmet Fatih Aktas > > > > > > > > > > > > > > > On Tue, Feb 26, 2013 at 3:08 PM, Ali Al-Shabibi > > > > > <ali.al-shab...@stanford.edu> wrote: > > > > > Hi Mehmet, > > > > > > > > > > FlowVisor can reside anywhere really (within a reasonable latency), > > > > > so you could have it running in the mininet VM or on another machine. > > > > > Just point your mininet network to the FlowVisor. > > > > > > > > > > This can be done by giving the --controller remote option to mininet. > > > > > That said, I'd be interested to know what problems you had installing > > > > > FlowVisor. > > > > > > > > > > > > > > > > > Is there any simple tutorial or any resource that can help me to > > > > > > get on board quickly ? > > > > > > > > > > Unfortunately not yet, but I will be putting the tutorials up online > > > > > officially soon, although they may not be very different to the ones > > > > > you have found yet. > > > > > > > > > > Hope this helps! > > > > > > > > > > > Thanks. > > > > > > > > > > > > Mehmet Fatih Aktas > > > > > > _______________________________________________ > > > > > > openflow-discuss mailing list > > > > > > openflow-discuss@lists.stanford.edu > > > > > > https://mailman.stanford.edu/mailman/listinfo/openflow-discuss > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > _______________________________________________ > > openflow-discuss mailing list > > openflow-discuss@lists.stanford.edu > > https://mailman.stanford.edu/mailman/listinfo/openflow-discuss > > _______________________________________________ openflow-discuss mailing list openflow-discuss@lists.stanford.edu https://mailman.stanford.edu/mailman/listinfo/openflow-discuss