Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

VLAN tag strip out stop data plane fowarding at Edge port with FAUCET #110

Open
1 of 2 tasks
mbruyere opened this issue Mar 17, 2017 · 4 comments
Open
1 of 2 tasks

Comments

@mbruyere
Copy link

mbruyere commented Mar 17, 2017

Issue Type

  • Bug report
  • Feature proposal

Summary

The problem is that FAUCET will push a VLAN header on a packet, then pop it.
In the meantime, we need to match on the packet's VLAN header after the push but before the pop.
It appears it will not match the packet when the header has been pushed.

Bug report

Vlan pop out functions at the Edge port break the matching or forwarding action.

Here is the lagopus show flow output even with the counter at zero.

         "table": 7,
                "flows": [
                    {
                        "priority": 9008,
                        "idle_timeout": 0,
                        "hard_timeout": 0,
                        "cookie": 1524372928,
                        "in_port": 1,
                        "dl_dst": "ff:ff:ff:ff:ff:ff",
                        "vlan_vid": "4196",
                        "actions": [
                            {
                                "apply_actions": [
                                    {
                                        "strip_vlan": null
                                    },
                                    {
                                        "output": 2
                                    }
                                ]
                            }
                        ],
                        "stats": {
                            "packet_count": 0,
                            "byte_count": 0
                        }
                    },

Expected behavior

Packets with VLAN tag strip out at the edge should not break the data plane.

Actual behavior

Trying to ping two hosts connected to Lagopus does not work using native VLAN at the Edge and VLAN tagging in the Lagopus bridge.
If we configure the hosts with trunks and lagopus does not have to strip out the VLAN tag it works.

Environment

Steps to reproduce

Relevant logs

All details can be found in the linked file below :
FAUCET LAGOPUS confs .txt

Links / reference

@mbruyere mbruyere changed the title Vlan PoP VLAN tag strip out stop data plane fowarding at Edge port with FAUCET Mar 17, 2017
@ynkjm
Copy link

ynkjm commented Mar 17, 2017

Thank you for report.
Could you share your flow entries that include VLAN push and pop (strip)?

@mbruyere
Copy link
Author

here is :
FAUCET Lagopus show flow output.txt

@ynkjm
Copy link

ynkjm commented Mar 17, 2017

Thanks!

hirokazutakahashi pushed a commit that referenced this issue Mar 22, 2017
Fix matching vlan id after push (issue #110)
@hirokazutakahashi
Copy link
Contributor

I've merged the fix for this issue to the master branch. Please test it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants