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

Implement VXLAN #18

Closed
2 of 3 tasks
philips opened this issue Aug 24, 2014 · 5 comments · Fixed by #71
Closed
2 of 3 tasks

Implement VXLAN #18

philips opened this issue Aug 24, 2014 · 5 comments · Fixed by #71

Comments

@philips
Copy link
Contributor

philips commented Aug 24, 2014

Take advantage of in-Kernel VXLAN implementation which would reduce the overhead significantly of the UDP tunnel.

Looking at this briefly we would need to do a few things:

References: http://en.wikipedia.org/wiki/Distributed_Overlay_Virtual_Ethernet#Implementations

@marineam
Copy link

We already ship 3.8.0, which is when the DOVE was added. That is also the current "stable" version in Gentoo. Will scan the release notes for important fixes since then but otherwise I'll consider that part ready to go. I think we need to enable it in the kernel, iirc there's a bug somewhere requesting that too.

@marineam
Copy link

This may be applicable: http://git.kernel.org/cgit/linux/kernel/git/shemminger/iproute2.git/commit/?id=7cfa3802ca3e9078cd8f6c9638a0c25a63f5ddd8

That landed in 3.11 so we'll need to bump the ebuild to at least that version.

@eyakubovich
Copy link
Contributor

I didn't know that there are alternate ways to manipulate the virtual MAC -> VTEP IP entries (bridge utility, netlink, unicast UDP). That does make it possible to use it without multicast. There's still extra space overhead with this solution: 14 bytes Ethernet header + 8 bytes VXLAN header but it's not a show stopper.

@philips
Copy link
Contributor Author

philips commented Aug 25, 2014

One thing I can't figure out is do you have to setup the route per mac
address or can you assign a subnet as we can do with our userspace thing
now?

On Sun, Aug 24, 2014 at 10:34 PM, Eugene Yakubovich <
[email protected]> wrote:

I didn't know that there are alternate ways to manipulate the virtual MAC
-> VTEP IP entries (bridge utility, netlink, unicast UDP). That does make
it possible to use it without multicast. There's still extra space overhead
with this solution: 14 bytes Ethernet header + 8 bytes VXLAN header but
it's not a show stopper.


Reply to this email directly or view it on GitHub
#18 (comment).

@pquerna
Copy link

pquerna commented Sep 21, 2014

One kinda crazy idea, make the multi-cast address your tun/tap device, pop it up to userspace, and then your high level code can decide what to do with broadcast packets. (if there isn't an easier way)

Nevermind, looked more, it seems you just want to use L2MISS and L3MISS messages from netlink and you can avoid all the multicast business.

eyakubovich pushed a commit to eyakubovich/flannel that referenced this issue Oct 22, 2014
VXLAN datapath is supported by the kernel thereby reducing the
overhead of TUN device and userspace switching. This patch takes
advantange of DOVE extensions and does not use multicast for port
flooding.

Fixes flannel-io#18
eyakubovich pushed a commit to eyakubovich/flannel that referenced this issue Oct 24, 2014
VXLAN datapath is supported by the kernel thereby reducing the
overhead of TUN device and userspace switching. This patch takes
advantange of DOVE extensions and does not use multicast for port
flooding.

Fixes flannel-io#18
eyakubovich pushed a commit to eyakubovich/flannel that referenced this issue Nov 4, 2014
VXLAN datapath is supported by the kernel thereby reducing the
overhead of TUN device and userspace switching. This patch takes
advantange of DOVE extensions and does not use multicast for port
flooding.

Fixes flannel-io#18
eyakubovich pushed a commit to eyakubovich/flannel that referenced this issue Nov 4, 2014
VXLAN datapath is supported by the kernel thereby reducing the
overhead of TUN device and userspace switching. This patch takes
advantange of DOVE extensions and does not use multicast for port
flooding.

Fixes flannel-io#18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants