On 09/01/17 17:19, Chandran, Sugesh wrote:
Hi Ian,
Thank you for working on this.
This feature is going to be very useful in OVS-DPDK deployment.
I also did some basic testing of this implementation.
Here are the comments,
I'm curious, is this using MACsec? Can MACsec be used?
The following slide deck indicates that MACsec (already in the Linux
kernel), could be used with VXLAN. (I am not sure about cross platform
support though).
http://www.netdevconf.org/1.1/proceedings/slides/dubroca-macsec-encryption-wire-lan.pdf
Other links I had encountered a while back about MACsec (considering
that VXLAN is L2 carriage):
https://developers.redhat.com/blog/2016/10/14/macsec-a-different-solution-to-encrypt-network-traffic/
http://costiser.ro/2016/08/01/macsec-implementation-on-linux/
MACsec might get you to a solution faster, if appropriate.
1) The dpctl show still shows the port as vxlan. It must be changed to
vxlan-ipsec
2) Its mentioned in the cover letter, however I see the flows stats are
looks ok. Only the port stats are need to be properly handled.
3) The dpctl/dump-flows says the actions as vxlan. It should be
vxlan-ipsec .
4) I think the ovs-vsctl show should be extended to show the SPI
information.(Even its static for now)
5) Similarly the ipsec port should provided with security association
it is using. This should be in the options.
6) I tried to do run a following test on the ipsec tunnel
implementation and it looks like there is some issue with rule translation as I
don’t see the packets are forwarding.
PKT-IN -->BR1--(ENCAP)-->BR2 -->(MOD-PKT 'patch port')---->BR3-->(DECAP)
-->BR4.
I see the encap is happening and but nothing afterwards. It works fine
on normal VxLAN.
Regards
_Sugesh
-----Original Message-----
From: [email protected] [mailto:ovs-dev-
[email protected]] On Behalf Of Ian Stokes
Sent: Friday, August 25, 2017 5:40 PM
To: [email protected]
Subject: [ovs-dev] [RFC PATCH v2 00/10] RFC for Userspace IPsec Interface
[snip]
The flow structer has been modified to allow the storing of the ESP SPI value
[Sugesh] structure?
of a packet. The Minflow extract process has been modified accordingly.
Base IPsec functionality has been detailed in 'Docs: Update releases with
IPsec feature support info.'
A proposed design of a new IPsec interface is included with its options in the
'vswitch.xml: Detail ipsec user interface' RFC. Note this is the final target
the
patch series should resemble as development continues.
A `how-to` guide has been added to provide some context of how the IPsec
interface would be configured by a user in the 'Docs: Add userspace-ipsec
how to guide.'
Please note this is a early approach and is not intended for upstreaming,
instead it is to provide an insight into some of the requirements the work will
have. It is subject to change following feedback from the community and
ongoing investigation during future RFC implementations.
(ii) Known Issues
As investigation progresses I'm sure there will be more opens to be added to
the list below, but from the outset there are a few issues I'd like to flag at
this
stage as the patch the feature is still in development.
(1) Cipher/Authentication Algorithms: The current RFC is limited in that the
algorithm used for cipher/authentication are hard coded to 128 AES-CBC and
HMAC-SHA1-96 respectively. Keys are also hardcoded. I will add the ability to
read keys from a user in the next revision along with selection of algorithms
for the operations. The current series should provide a feel for how crypto
operations work with DPDK.
(2) Crypto device: Currently only software crypto devices are supported,
specifically the AESN-NI vdev PMD in DPDK.
(3) Single PMD support within OVS: The current RFC is limited to running on a
single PMD.
Running it with more than 1 PMD will (probably) cause a segfault. Multiple
pmd support will be added in the next revision after some discussion on how
cryptodevs should be accessed on a multi core system.
(4) Use of DPDK crypto devs requires installing the Intel(R) Multi-Buffer
Crypto for IPSec library. This is an opensource library available on github and
is used by DPDK to perform crypto operations when with a vdev such as the
AESN-NI PMD. Setup instructions have been included in the patch series.
(5) Stats: I haven’t looked into how this will affect stats within OVS yet but
[Sugesh] There are some special characters.
this is another item I will look at for the next revision in the series.
(6) OVS mode: The series has been tested with OVS with DPDK only. A few
rte libraries have been introduced to areas where DPDK previously was not
active, for instance the tunneling code. I'm aware that this will break
compilation if a user compiles OVS without DPDK. How the libraries should be
introduced to prevent this is an item I would be interested in receiving
feedback on as I will be working on this for the next revision.
[Sugesh] I think this shouldn’t be a problem as you are not using any of
existing tunnel interface.
May be its worth to considering enabling ipsec only when DPDK support is
available in OVS.
Also the changes are on only on native tunnel, this shouldn’t break non DPDK
build.
[snip]
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev
--
Raymond Burkholder
https://blog.raymond.burkholder.net/
--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev