05:31:46 <soichi> #startmeeting taas 05:31:47 <openstack> Meeting started Wed Jan 11 05:31:46 2017 UTC and is due to finish in 60 minutes. The chair is soichi. Information about MeetBot at http://wiki.debian.org/MeetBot. 05:31:48 <openstack> Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 05:31:50 <openstack> The meeting name has been set to 'taas' 05:32:04 <soichi> #link: https://wiki.openstack.org/wiki/Meetings/taas 05:32:33 <soichi> #topic: Loop detection of tap flows (to prevent creating a loop) 05:33:30 <soichi> i think this topic was homework for everyone :) 05:34:01 <soichi> vnyyad: hi 05:34:06 <vnyyad> hi 05:34:13 <vnyyad> happy new year to all! 05:35:02 <soichi> Happy New Year! 05:35:13 <kaz> hi, happy new year 05:35:25 <soichi> we'd like to discuss "loop detection of tap flows (to prevent creating a loop)" 05:35:51 <soichi> it is a cycle detection problem on a directed graph 05:36:03 <soichi> each tap flow has only one destination (tap service) 05:36:16 <vnyyad> soichi: was(is) there a usecase for mirroring a tap service port? 05:36:45 <soichi> i'm not sure about actual use case 05:37:26 <vnyyad> hmmm... because we can simple deny this in the first place to avoid cycles to keep it simple 05:37:51 <vnyyad> but yes if there is a use case we need the algo 05:38:06 <soichi> i agree with you 05:38:33 <soichi> this topic was submitted by yamamoto san 05:39:11 <vnyyad> ok but lets discuss it anyways... he might have a use case 05:39:20 <soichi> sure 05:39:29 <soichi> each tap flow has only one destination (tap service) 05:39:37 <soichi> and loop can be created when a tap flow is created from a tap service to another tap service 05:39:48 <soichi> so i guess we can use a graph G(V, E) where V=tap service, E=tap flow 05:40:58 <soichi> i think we can apply the cycle detection algo by using DFS (depth-first serach) 05:41:30 <vnyyad> yes. And this has to be run before creation of each tap flow 05:41:42 <soichi> sure 05:42:04 <soichi> reference: https://www.youtube.com/watch?v=rKQaZuoUR4M 05:42:44 <vnyyad> also if i remember now there was a discussion we had on limiting the number of flows a tenant can create, just to make sure they are not creating a mess in the network intentionally or by mistake 05:43:12 <soichi> i think so. 05:43:21 <vnyyad> so the number of Es in the graph will be limited and the the algo should not spend a lot a time finding the loop 05:43:39 <soichi> i agree 05:45:31 <soichi> kaz: do you have any comments? 05:45:40 <reedip> hi 05:45:47 <soichi> reedip: hi 05:45:51 <vnyyad> hi 05:45:58 <soichi> reedip: happy new year 05:46:07 <kaz> sorry, no i don't. 05:46:08 <reedip> happy new year soichi san :) 05:46:23 <kaz> reedip: hi 05:46:33 <reedip> hi kaz , vnyyad 05:46:38 <reedip> sorry for being late 05:46:55 <soichi> reedip: we are discussing abot loop detection of tap flows 05:47:01 <soichi> do you have any idea? 05:47:14 <reedip> yes, I am reading the logs for the same. No , I forgot it :P 05:47:18 <yamamoto_> hi 05:47:33 <soichi> yamamoto: hi 05:47:50 <reedip> hi yamamoto_ , do we have a use case for mirroring a tap port? 05:49:19 <yamamoto_> actually i don't know. 05:51:35 <vnyyad> any one else has a use-case for this? 05:52:41 <soichi> i don't have. So, guard creating a tap flow on tap service is simple, i think 05:52:58 <vnyyad> +1 05:53:04 <kaz> +1 05:54:05 <reedip> soichi : but when we mirror a port, do we know that the port is a normal port or a tap port ?? :) 05:55:36 <soichi> i think we can chaeck a tap service is already associated to the port 05:55:43 <vnyyad> we can always return an error when we detect it 05:55:46 <soichi> chaeck -> check 05:56:11 <reedip> soichi : No, my question is : You have a tap -service , and you created a tap flow on Port p1 05:56:28 <reedip> Port p1 is your source port 05:56:47 <reedip> the port created by tap-service is port p2 ( during creation of tap-service) 05:57:12 <reedip> now if a user tries to use port p2 as a source port for another tap-service, with destination port p3 05:57:25 <reedip> then would that work ? 05:57:41 <soichi> it is not work 05:57:59 <vnyyad> redeep: it wont 05:58:23 <soichi> we wonder is there such a use case 05:58:33 <vnyyad> block all attempts to make a already existing tap-service port as a source for a tap flow 05:58:57 <soichi> vnyyad: +1 06:00:14 <soichi> excuse me, but today i have to leave now. i'd like to pass the chair to kaz. 06:00:20 <soichi> #chair kaz 06:00:21 <openstack> Current chairs: kaz soichi 06:00:43 <soichi> see you next week 06:00:54 <reedip> so that means we need to add a check in out code as well 06:01:33 <reedip> adios vnyyad 06:02:00 <vnyyad> is the meeting over? 06:02:24 <kaz> no, still open, 06:02:28 <vnyyad> :) 06:02:54 <vnyyad> reedip: yes we need to add the check in the code 06:05:22 <kaz> reedip? 06:05:31 <reedip> hi ... 06:05:39 <reedip> sorry , was working on another item :D 06:06:08 <reedip> vnyyad : okay, should we add a bug for this ? Also we need to open blueprints in Tap-as-a-Service in launchpad 06:07:10 <vnyyad> reedip: for the blueprint i need to ask anil, as i am not able to do it for some reason 06:07:20 <reedip> vnyyad : ohk 06:08:42 <njohnston> I have a very general TaaS question; let me know when a good time to ask it would be 06:09:08 <kaz> #topic Open Discussion 06:09:28 <njohnston> Hi! So I am starting to try and use TaaS by trying it out in a devstack. My problem is that after setting it up using the directions from INSTALL.rst I keep getting the error "ImportError: Plugin 'taas' not found." This seems like an FAQ; any advice? Is there a chat channel you all hang out in, talking about TaaS, where I could check in for questions like this? 06:10:53 <vnyyad> njohnston: is this error on the taas agent side (compute nodes) or on the taas plugin side? 06:11:00 <yamamoto_> there's no such a channel. 06:12:23 <yamamoto_> there was a discussion about a channel but the consensus at that point was to use #openstack-neutron 06:12:49 <yamamoto_> as there would be little traffic anyway 06:12:51 <njohnston> OK, I can definitely ask there 06:13:18 <yamamoto_> at least i'm there when online. 06:13:27 <njohnston> Thanks, all! 06:14:19 <yamamoto_> wrt import error, i'm not sure. have you followed devstack/README.rst? 06:14:32 <njohnston> yes 06:14:45 <njohnston> and this is on the taas plugin side, errors coming from neutron server 06:15:50 <yamamoto_> can you show us your local.conf? 06:17:26 <njohnston> yamamoto_: http://paste.openstack.org/show/594499/ 06:19:05 <yamamoto_> i guess you should use stable/newton for taas as well? 06:19:27 <yamamoto_> otherwise looks ok to me 06:19:32 <vnyyad> +1 06:19:40 <kaz> +1 06:19:56 <yamamoto_> i'm not sure branch difference is a cause of the import error or not though. 06:21:45 <njohnston> thanks 06:21:48 <vnyyad> yamamoto: a difference in branch can cause this error, happened to me a month ago 06:22:37 <vnyyad> looks like the branches needed to match (branch of devstack and taas) 06:22:56 <vnyyad> but for me master devstack with master taas worked out well 06:25:04 <kaz> do you have any other topics? 06:25:22 <yamamoto_> njohnston: feel free to ask us again if matchin branches doesn't improve the situation. 06:25:45 <yamamoto_> i want to remind a few changes to review 06:26:09 <yamamoto_> #link https://review.openstack.org/#/c/256210/ spec 06:26:27 <yamamoto_> #link https://review.openstack.org/#/c/396022/ horizon 06:27:09 <yamamoto_> #link https://review.openstack.org/#/c/405261/ tox_install 06:27:10 <kaz> yamamoto_: thanks 06:27:25 <yamamoto_> #link https://review.openstack.org/#/c/413360/ tox_install (alternative) 06:27:47 <yamamoto_> tox_install thing might be less obvious 06:28:30 <yamamoto_> it's necessary to use the correct version of deps on gate 06:28:46 <yamamoto_> it needs to be backported to stable branch 06:28:58 <yamamoto_> that's all from me 06:29:22 <kaz> thank you 06:29:53 <njohnston> thanks all! 06:29:55 <reedip> Also the OSC is up 06:30:11 <kaz> we have no time left 06:30:14 <reedip> https://review.openstack.org/398767 06:30:25 <reedip> kaz : yeah, this is just for you guys to review :D 06:30:45 <yamamoto_> yea, use the dashboard link on the wiki for full list. :-) 06:31:02 <kaz> yes 06:31:28 <kaz> see you next week. 06:31:37 <kaz> #endmeeting