[ovs-dev] NSH Option 2 implementation

Simon Horman simon.horman at netronome.com
Thu Aug 11 11:32:15 UTC 2016


Hi Jan,

On Thu, Aug 11, 2016 at 11:04:22AM +0000, Jan Scheurich wrote:
> > > [Jan] Should sending a packet after push_nsh to an output port be
> > > allowed in general? For a VXLAN-GPE tunnel port this is OK, but my
> > > expectation was that one must explicitly do push_eth (followed by
> > > set_field for dl_src and dl_dst) to be able to transmit on a normal Ethernet port.
> > >
> > Yes, to output to VxLAN-GPE port, we could just use "output:1" as shown in The example flow, while adding some additional flow actions
> > are required to Output to normal L2 port. We could explicitly add flow action "push_eth" or We could use implicit "push_eth" dataplane
> > action to add an Ethernet header To the packet before outputting to the normal L2 port.
> 
> I believe that using implicit push_eth is not a viable option for sending
> to an Ethernet port. The reason is that the resulting MAC header would
> have all-zero source and destination MAC addresses and can therefore not
> properly be transmitted on Ethernet links (unless the link is a
> point-to-point connection and the receiver is configured for promiscuous
> mode).
> 
> The implicit push_eth action introduced by Simon in his L3 tunnel port
> patch mainly ensures the presence of the 14 byte MAC header on ports
> where this is a must for syntactic interpretation of the packet. It did
> not worry about if the resulting packet was semantically useful or not.

In the context of my patchset it is possible to set the MAC addresses
(to something non-zero) using a set-field (or similar) action. Is
that facility of use here?



More information about the dev mailing list