On 4 July 2017 at 20:45, Yi Yang <[email protected]> wrote:
> From: Jan Scheurich <[email protected]>
>
> This patch adds support for NSH packet header fields to the OVS
> control plane and the userspace datapath. Initially we support the
> fields of the NSH base header as defined in
> https://www.ietf.org/id/draft-ietf-sfc-nsh-12.txt
> and the fixed context headers specified for metadata format MD1.
> The variable length MD2 format is parsed but the TLV context headers
> are not yet available for matching.
>
> The NSH fields are modelled as OXM fields with the dedicated OXM
> class 0x8004 proposed for NSH in ONF. The following fields are defined:
>
> OXM code ofctl name Size Comment
> ----------------------------------------------------------------------
> OXM_NSH_FLAGS nsh_flags 8 Bits 2-9 of 1st NSH word
> (0x8004,1)
> OXM_NSH_MDTYPE nsh_mdtype 8 Bits 16-23
> (0x8004,2)
> OXM_NSH_NEXTPROTO nsh_np 8 Bits 24-31
> (0x8004,3)
> OXM_NSH_SPI nsh_spi 24 Bits 0-23 of 2nd NSH word
> (0x8004,4)
> OXM_NSH_SI nsh_si 8 Bits 24-31
> (0x8004,5)
> OXM_NSH_C1 nsh_c1 32 Maskable, nsh_mdtype==1
> (0x8004,6)
> OXM_NSH_C2 nsh_c2 32 Maskable, nsh_mdtype==1
> (0x8004,7)
> OXM_NSH_C3 nsh_c3 32 Maskable, nsh_mdtype==1
> (0x8004,8)
> OXM_NSH_C4 nsh_c4 32 Maskable, nsh_mdtype==1
> (0x8004,9)
>
> Signed-off-by: Mengke Liu <[email protected]>
> Signed-off-by: Ricky Li <[email protected]>
> Signed-off-by: Johnson Li <[email protected]>
> Signed-off-by: Yi Yang <[email protected]>
> Signed-off-by: Jan Scheurich <[email protected]>
> ---
Hi Yi, Jan,
Just relating to our other discussion on the GTP thread, I gave one
minor comment below. I don't have specific plans to review the rest of
the series at this stage.
Oh, and I see that there's no co-author tags in the commit message either.
> static const struct ovs_len_tbl ovs_vxlan_ext_key_lens[OVS_VXLAN_EXT_MAX +
> 1] = {
> diff --git a/datapath/linux/compat/include/linux/openvswitch.h
> b/datapath/linux/compat/include/linux/openvswitch.h
> index 91d3140..f5814c5 100644
> --- a/datapath/linux/compat/include/linux/openvswitch.h
> +++ b/datapath/linux/compat/include/linux/openvswitch.h
> @@ -359,6 +359,7 @@ enum ovs_key_attr {
> OVS_KEY_ATTR_CT_LABELS, /* 16-octet connection tracking labels */
> OVS_KEY_ATTR_CT_ORIG_TUPLE_IPV4, /* struct ovs_key_ct_tuple_ipv4 */
> OVS_KEY_ATTR_CT_ORIG_TUPLE_IPV6, /* struct ovs_key_ct_tuple_ipv6 */
> + OVS_KEY_ATTR_NSH, /* struct ovs_key_nsh */
Until such changes are proposed upstream on netdev, we should put
these under the ifndef kernel a few lines below.
Same with all of the other enum changes in this file.
Cheers,
Joe
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev