Hi Cathy and other guys I am a beginner that use networking-sfc. I create a port-chain-list that want to steer a flow that is from public-net to private-net to SF node. The DVR is enable in my test environment. The test result is the flow was steered from destination node to SF node and return to the destination node rightly, but the flow was match the classify rule again,so the flow can not to be send to the destination VM. In networking-sfc agent code . there is a function update_src_node_flow_rules that create a normal flow to handle this case. But in networking-sfc ovs dirver code, _update_src_node_flowrules can't call ask_agent_to_update_src_node_flow_rules to notify agent to exec update_src_node_flow_rules. The reason is the function _get_portchain_src_node_flowrule return None. In function _get_portchain_src_node_flowrule , the check that was marked red is not right in this case.
def _get_portchain_src_node_flowrule(self, node, add_fc_ids=None, del_fc_ids=None): try: add_fc_rt = [] del_fc_rt = [] if add_fc_ids: for fc in self._get_fcs_by_ids(add_fc_ids): if not fc.get('logical_source_port', None): add_fc_rt.append(fc) if del_fc_ids: for fc in self._get_fcs_by_ids(del_fc_ids): if not fc.get('logical_source_port', None): del_fc_rt.append(fc) if not add_fc_rt and not del_fc_rt: return None return self._build_portchain_flowrule_body_without_port( node, add_fc_rt, del_fc_rt) except Exception as e: LOG.exception(e) LOG.error(_LE("_get_portchain_src_node_flowrule failed")) Is it a bug or my configure is wrong? root@rg1-com01 ~]# neutron flow-classifier-show 4542a747-b205-41ff-970c-1ea11fa956fc +----------------------------+--------------------------------------+ | Field | Value | +----------------------------+--------------------------------------+ | description | | | destination_ip_prefix | 192.168.1.0/24 | | destination_port_range_max | | | destination_port_range_min | | | ethertype | IPv4 | | id | 4542a747-b205-41ff-970c-1ea11fa956fc | | l7_parameters | {} | | logical_destination_port | | | logical_source_port | f18895cf-6c4b-495a-8bd5-e8f12ae86541 | | name | FC-F3 | | protocol | | | source_ip_prefix | 192.168.200.0/24 | | source_port_range_max | | | source_port_range_min | | | tenant_id | 02e5a953a113479388103c585f5b5ae1 | +----------------------------+--------------------------------------+ the original flow is 192.168.200.2 to 192.168.200.202 floatingip( 192.168.1.202 private ip) logical_source_port is fg-xxx interface in namespace fip. Thanks Jim
__________________________________________________________________________ OpenStack Development Mailing List (not for usage questions) Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev