Hey Saurabh,
I applied the patches that you sent. Everything seems to compile fine and
install properly.
I tried to set-up a tunnel between two hypervisors following the steps in
INSTALL.Windows.
(I tried with Hyper-V to Hyper-V and KVM to Hyper-V)
Here is my configuration on H1:
PS C:\ovs_guys\binaries> .\ovs-vsctl.exe --db=tcp:127.0.0.1:8888 show
4f148df0-a7da-4782-a2a2-514dfe3079f4
Bridge br-pif
Controller "ptcp:9999:127.0.0.1"
Port "external.1"
Interface "external.1"
Port br-pif
Interface br-pif
type: internal
Port internal
Interface internal
Bridge br-int
Port "vmNICSyn.1000048"
Interface "vmNICSyn.1000048"
Port br-int
Interface br-int
type: internal
Port "vxlan-1"
Interface "vxlan-1"
type: vxlan
options: {in_key=flow, local_ip="10.13.8.101", out_key=flow,
remote_ip="10.13.8.160"}
Port "vmNICSyn.1000049"
Interface "vmNICSyn.1000049"
PS C:\ovs_guys\binaries> .\ovs-dpctl.exe show
2014-07-25T23:02:23Z|00001|socket_util|ERR|4789:0.0.0.0: bind: Only one usage
of each socket address (protocol/network a
ddress/port) is normally permitted.
system@ovs-system:
lookups: hit:13397737 missed:891252 lost:0
flows: 9
masks: hit:0 total:0 hit/pkt:0.00
port 16777216: internal
port 150994946: vxlan_sys_4789 (vxlan: df_default=false, ttl=0)
port 16777225: external.1
port 16777288: vmNICSyn.1000048
port 16777289: vmNICSyn.1000049
Configuration on H2:
PS C:\ovs_guys\binaries> .\ovs-vsctl.exe --db=tcp:127.0.0.1:8888 show
667e4171-2858-47f6-9030-fcc144a845b7
Bridge br-int
Port "vmNICSyn.1000048"
Interface "vmNICSyn.1000048"
Port "vxlan-1"
Interface "vxlan-1"
type: vxlan
options: {in_key=flow, local_ip="10.13.8.160", out_key=flow,
remote_ip="10.13.8.101"}
Port br-int
Interface br-int
type: internal
Bridge "br0"
Port internal
Interface internal
Port "external.1"
Interface "external.1"
Port "br0"
Interface "br0"
type: internal
PS C:\ovs_guys\binaries> .\ovs-dpctl.exe show
2014-07-25T23:00:12Z|00001|socket_util|ERR|4789:0.0.0.0: bind: Only one usage
of each socket address (protocol/network a
ddress/port) is normally permitted.
system@ovs-system:
lookups: hit:364132 missed:72177 lost:0
flows: 8
masks: hit:0 total:0 hit/pkt:0.00
port 16777216: internal
port 50331650: vxlan_sys_4789 (vxlan: df_default=false, ttl=0)
port 16777225: external.1
port 16777288: vmNICSyn.1000048
If I try to ping a VM on H1 with a VM on H2 they I get no replies. If I add a
patch-port between the bridages
or put the VMs on the same bridge with external/internal I get a reply, however
I cannot make the VMs
communicate actually using VXLAN.
Kind Regards,
Alin.
________________________________________
From: dev [[email protected]] on behalf of Alessandro Pilotti
[[email protected]]
Sent: Friday, July 25, 2014 8:20 PM
To: Saurabh Shah
Cc: [email protected]; [email protected]; [email protected];
[email protected]
Subject: Re: [ovs-dev] [PATCH v2 0/3] Support for OVS datapath on Windows
platform.
Hi Saurabh,
I’d suggest that before doing a full review of the kernel driver we need to
have:
* Userspace Netlink interface support (which means that patches 1 and 2 in this
set can be skipped)
* Kernel Netlink interface support (not provided by patch 3)
* Support for multiple datapaths and vswitches
* Split the kernel driver code in smaller patches to allow a proper review (I
made a simple suggestion in a previous email, but any other solution is good)
Rewriting the driver to avoid dependencies on the MSFT sample was a very good
idea, since ATM we don’t know if and when the legal review will be complete and
the sample code will be released as Apache 2.
Thanks,
Alessandro
On 24 Jul 2014, at 20:24, Saurabh Shah <[email protected]> wrote:
> This patch series adds OpenvSwitch datapath support for Windows platform. The
> kernel switch extension has support for bridged back forwarding & tunneling
> over VXLAN.
>
> The patch series is based on top of c450371 ("datapath: Initialize OVS_CB in
> ovs_vport_receive()")
>
> Here are some of the major things that are addressed by this v2 patch:
> 01. Complete rewrite of the base code, so there is no dependency on
> MS-LPL license any more.
> 02. The following crash-report by Cloudbase has been fixed -
> http://paste.openstack.org/show/84911/.
>
> Saurabh Shah (3):
> odp-util: Add utility function, odp_flow_key_to_flow_verbose.
> dpif-windows: Implement datapath interface for windows.
> datapath-windows: Implement the virtual switch forwarding extension.
>
> AUTHORS | 3 +
> BUILD.Windows | 96 --
> CodingStyle | 4 +-
> INSTALL.Windows | 131 +++
> Makefile.am | 6 +-
> datapath-windows/CodingStyle | 139 +++
> datapath-windows/DESIGN | 371 ++++++
> datapath-windows/Package/package.VcxProj | 95 ++
> datapath-windows/automake.mk | 56 +
> datapath-windows/extensions.sln | 49 +
> datapath-windows/include/OvsNetlink.h | 174 +++
> datapath-windows/include/OvsPub.h | 498 ++++++++
> datapath-windows/misc/install.cmd | 4 +
> datapath-windows/misc/uninstall.cmd | 1 +
> datapath-windows/ovsext/OvsActions.c | 1512 ++++++++++++++++++++++++
> datapath-windows/ovsext/OvsAtomic.h | 32 +
> datapath-windows/ovsext/OvsBufferMgmt.c | 1535 +++++++++++++++++++++++++
> datapath-windows/ovsext/OvsBufferMgmt.h | 124 ++
> datapath-windows/ovsext/OvsChecksum.c | 509 ++++++++
> datapath-windows/ovsext/OvsChecksum.h | 33 +
> datapath-windows/ovsext/OvsDebug.c | 58 +
> datapath-windows/ovsext/OvsDebug.h | 90 ++
> datapath-windows/ovsext/OvsDriver.c | 184 +++
> datapath-windows/ovsext/OvsEth.h | 450 ++++++++
> datapath-windows/ovsext/OvsEvent.c | 496 ++++++++
> datapath-windows/ovsext/OvsEvent.h | 50 +
> datapath-windows/ovsext/OvsFlow.c | 978 ++++++++++++++++
> datapath-windows/ovsext/OvsFlow.h | 78 ++
> datapath-windows/ovsext/OvsIoctl.c | 758 ++++++++++++
> datapath-windows/ovsext/OvsIoctl.h | 40 +
> datapath-windows/ovsext/OvsIpHelper.c | 1689 +++++++++++++++++++++++++++
> datapath-windows/ovsext/OvsIpHelper.h | 128 +++
> datapath-windows/ovsext/OvsJhash.c | 129 +++
> datapath-windows/ovsext/OvsJhash.h | 30 +
> datapath-windows/ovsext/OvsNetProto.h | 367 ++++++
> datapath-windows/ovsext/OvsOid.c | 855 ++++++++++++++
> datapath-windows/ovsext/OvsOid.h | 26 +
> datapath-windows/ovsext/OvsPacketIO.c | 441 +++++++
> datapath-windows/ovsext/OvsPacketIO.h | 61 +
> datapath-windows/ovsext/OvsPacketParser.c | 300 +++++
> datapath-windows/ovsext/OvsPacketParser.h | 144 +++
> datapath-windows/ovsext/OvsSwitch.c | 529 +++++++++
> datapath-windows/ovsext/OvsSwitch.h | 169 +++
> datapath-windows/ovsext/OvsTunnel.c | 346 ++++++
> datapath-windows/ovsext/OvsTunnel.h | 57 +
> datapath-windows/ovsext/OvsTunnelFilter.c | 343 ++++++
> datapath-windows/ovsext/OvsTunnelIntf.h | 25 +
> datapath-windows/ovsext/OvsTypes.h | 32 +
> datapath-windows/ovsext/OvsUser.c | 861 ++++++++++++++
> datapath-windows/ovsext/OvsUser.h | 114 ++
> datapath-windows/ovsext/OvsUtil.c | 89 ++
> datapath-windows/ovsext/OvsUtil.h | 78 ++
> datapath-windows/ovsext/OvsVport.c | 1416 +++++++++++++++++++++++
> datapath-windows/ovsext/OvsVport.h | 190 +++
> datapath-windows/ovsext/OvsVxlan.c | 441 +++++++
> datapath-windows/ovsext/OvsVxlan.h | 81 ++
> datapath-windows/ovsext/ovsext.inf | 85 ++
> datapath-windows/ovsext/ovsext.rc | 23 +
> datapath-windows/ovsext/ovsext.vcxproj | 164 +++
> datapath-windows/ovsext/precomp.h | 31 +
> datapath-windows/ovsext/precompsrc.c | 17 +
> include/linux/openvswitch.h | 8 +-
> lib/automake.mk | 3 +
> lib/dpif-netdev.c | 17 +-
> lib/dpif-provider.h | 3 +
> lib/dpif-windows.c | 1786 +++++++++++++++++++++++++++++
> lib/dpif-windows.h | 58 +
> lib/dpif.c | 3 +
> lib/netdev-provider.h | 3 +
> lib/netdev-windows.c | 714 ++++++++++++
> lib/netdev.c | 5 +
> lib/netlink-protocol.h | 5 +
> lib/odp-util.c | 24 +
> lib/odp-util.h | 2 +
> lib/util.c | 16 +
> lib/util.h | 1 +
> 76 files changed, 20347 insertions(+), 116 deletions(-)
> delete mode 100644 BUILD.Windows
> create mode 100644 INSTALL.Windows
> create mode 100644 datapath-windows/CodingStyle
> create mode 100644 datapath-windows/DESIGN
> create mode 100755 datapath-windows/Package/package.VcxProj
> create mode 100644 datapath-windows/automake.mk
> create mode 100644 datapath-windows/extensions.sln
> create mode 100644 datapath-windows/include/OvsNetlink.h
> create mode 100644 datapath-windows/include/OvsPub.h
> create mode 100755 datapath-windows/misc/install.cmd
> create mode 100755 datapath-windows/misc/uninstall.cmd
> create mode 100644 datapath-windows/ovsext/OvsActions.c
> create mode 100644 datapath-windows/ovsext/OvsAtomic.h
> create mode 100644 datapath-windows/ovsext/OvsBufferMgmt.c
> create mode 100644 datapath-windows/ovsext/OvsBufferMgmt.h
> create mode 100644 datapath-windows/ovsext/OvsChecksum.c
> create mode 100644 datapath-windows/ovsext/OvsChecksum.h
> create mode 100644 datapath-windows/ovsext/OvsDebug.c
> create mode 100644 datapath-windows/ovsext/OvsDebug.h
> create mode 100644 datapath-windows/ovsext/OvsDriver.c
> create mode 100644 datapath-windows/ovsext/OvsEth.h
> create mode 100644 datapath-windows/ovsext/OvsEvent.c
> create mode 100644 datapath-windows/ovsext/OvsEvent.h
> create mode 100644 datapath-windows/ovsext/OvsFlow.c
> create mode 100644 datapath-windows/ovsext/OvsFlow.h
> create mode 100644 datapath-windows/ovsext/OvsIoctl.c
> create mode 100644 datapath-windows/ovsext/OvsIoctl.h
> create mode 100644 datapath-windows/ovsext/OvsIpHelper.c
> create mode 100644 datapath-windows/ovsext/OvsIpHelper.h
> create mode 100644 datapath-windows/ovsext/OvsJhash.c
> create mode 100644 datapath-windows/ovsext/OvsJhash.h
> create mode 100644 datapath-windows/ovsext/OvsNetProto.h
> create mode 100644 datapath-windows/ovsext/OvsOid.c
> create mode 100644 datapath-windows/ovsext/OvsOid.h
> create mode 100644 datapath-windows/ovsext/OvsPacketIO.c
> create mode 100644 datapath-windows/ovsext/OvsPacketIO.h
> create mode 100644 datapath-windows/ovsext/OvsPacketParser.c
> create mode 100644 datapath-windows/ovsext/OvsPacketParser.h
> create mode 100644 datapath-windows/ovsext/OvsSwitch.c
> create mode 100644 datapath-windows/ovsext/OvsSwitch.h
> create mode 100644 datapath-windows/ovsext/OvsTunnel.c
> create mode 100644 datapath-windows/ovsext/OvsTunnel.h
> create mode 100644 datapath-windows/ovsext/OvsTunnelFilter.c
> create mode 100644 datapath-windows/ovsext/OvsTunnelIntf.h
> create mode 100644 datapath-windows/ovsext/OvsTypes.h
> create mode 100644 datapath-windows/ovsext/OvsUser.c
> create mode 100644 datapath-windows/ovsext/OvsUser.h
> create mode 100644 datapath-windows/ovsext/OvsUtil.c
> create mode 100644 datapath-windows/ovsext/OvsUtil.h
> create mode 100644 datapath-windows/ovsext/OvsVport.c
> create mode 100644 datapath-windows/ovsext/OvsVport.h
> create mode 100644 datapath-windows/ovsext/OvsVxlan.c
> create mode 100644 datapath-windows/ovsext/OvsVxlan.h
> create mode 100644 datapath-windows/ovsext/ovsext.inf
> create mode 100644 datapath-windows/ovsext/ovsext.rc
> create mode 100644 datapath-windows/ovsext/ovsext.vcxproj
> create mode 100644 datapath-windows/ovsext/precomp.h
> create mode 100644 datapath-windows/ovsext/precompsrc.c
> create mode 100644 lib/dpif-windows.c
> create mode 100644 lib/dpif-windows.h
> create mode 100644 lib/netdev-windows.c
>
> --
> 1.7.9.5
>
> _______________________________________________
> dev mailing list
> [email protected]
> http://openvswitch.org/mailman/listinfo/dev
_______________________________________________
dev mailing list
[email protected]
http://openvswitch.org/mailman/listinfo/dev
_______________________________________________
dev mailing list
[email protected]
http://openvswitch.org/mailman/listinfo/dev