> 
> >
> > Regards
> > _Sugesh
> >
> >
> > [Sugesh] I feel, match_set for every nsh field is a overkill
> > especially when we implement NSH type-2? Can we do this some more
> optimized way?
> > Consider the MD2 type as well when defining the match_set definitions.
> >
> [JL] I will try to use MACROs to do this.  For MD type 2, if all agree to 
> reuse
> the Tun_metadata[0...63], then there is no need to add new fields and APIs.
[JL] Hi all,  I'm going to prepare a new version of patch set with the 
following changes:
  1) converge the comments by far and follow the comments to improve the
       Quality of the codes. 
  2) Add framework codes (or full implementation) for MD type 2 support of
      the NSH header. According to the discussion at
      http://comments.gmane.org/gmane.network.openvswitch.devel/53788
      I will reuse the definitions for METADATA[0...63]. Since NSH is not one 
of 
      The tunneling encapsulation headers, renaming for the fields is required.
      This might be a huge change for the current code base:
       a) command line will be changed: no field for the md_type is set in
            within command line. Once NSHCx is set within command line, md_type
            equals 1; md_type equals 2 only incase the NSHCx are not set and at 
least
            one of METADATAx is set.
       b) openflow message will be parsed with different manners: both geneve 
            and NSH headers use the METADATAn fields,  so parsing and formatting
            these fields are different from current mode.
       c) header parsing/building will take care of these fields. 
      I have some concern about the compatibility issue, we need to make 
tradeoff. 
      seems there is no better solutions so far.
    3) Add "Ethernet + NSH" support for the OVS.  Following the discussion at
         http://comments.gmane.org/gmane.network.openvswitch.devel/53788
         we will introduce new match fields "encap_eth_dst/encap_eth_src" and
         related openflow actions"push_encap_eth/pop_encap_eth".  Since we
          treat outer Ethernet header as encapsulation header, so NO VLAN and
         MPLS tags are supported for the outer header. That means packets with
         Format "Ethernet + VLAN[|MPLS] + NSH + Ethernet + IPv4[|IPv6] + 
playload"
         Will be dropped by the OVS when parsing the packets. 
         Examples for Ethernet NSH case:
          1) encapsulation:
               #sudo ovs-ofctl add-flow ovsbr "in_port=2, 
actions=set_field:1->nsp, \
                 set_field: 255->nsi, push_nsh, set_field: 
00:11:22:33:44:55->encap_eth_dst, \
                 push_encap_eth, output: 3"
          2) decapsulation:
                #sudo ovs-ofctl add-flow ovsbr "in_port=3, nsp=0x800001, 
nsi=253,  \
                  encap_eth_src=00:11:22:33:44:55, actions=pop_encap_eth, 
pop_nsh, output: 3"
If there is no opposed comments for the MD type 2 and "Ethernet + NSH" design, 
I will try to send out new version of patch ASAP. If you have any better advice 
For the design, please raise your voice. If you have different opinions with 
the discussion
At  http://comments.gmane.org/gmane.network.openvswitch.devel/53788. We
May need to make agreement with You, Jesse and me first then I can send out
The patch.  Thanks!
> > > --
> > > 1.8.4.2
> > >
> > > _______________________________________________
> > > dev mailing list
> > > dev@openvswitch.org
> > > http://openvswitch.org/mailman/listinfo/dev
> _______________________________________________
> dev mailing list
> dev@openvswitch.org
> http://openvswitch.org/mailman/listinfo/dev
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to