[ovs-dev] MPLS and VLAN QinQ patch

Ben Pfaff blp at nicira.com
Fri May 25 16:31:56 UTC 2012


On Fri, May 25, 2012 at 01:24:00AM +0200, Ravi.Kerur at telekom.com wrote:
> On Thu, May 24, 2012 at 11:58:53PM +0200, Ravi.Kerur at telekom.com wrote:
> > Ben Pfaff writes:
> > > get_l3_ttl_and_tos()
> > > --------------------
> > > 
> > > Why does get_l3_ttl_and_tos() consider an unknown IP version as 
> > > success, with a default?  This seems odd.
> > 
> > To handle non-IP traffic i.e push/pop MPLS over non-IP traffic e.g. 
> > ARP(practical?), VPLS. I had also mentioned in previous discussion 
> > that MPLS ttl actions will not work for these type of traffic but 
> > other actions lke push_mpls,pop_mpls, set_mpls_label/set_mpls_tc would 
> > be. In this function I keep them to default for non-IP traffic.
> 
> But that only comes up in one situation: copying the TTL inward or outward when there is exactly one MPLS label.  In other situations (pushing an MPLS label or popping one) we know the correct inner Ethertype either because it's in the packet or because it's an argument to the action.  When we know it, we should use it. 
> 
> <rk> Cases for multiple MPLS headers currently happen only at Provider core routers and yes in that case we don't have to worry, I was thinking more in terms of Provider-Edge or MPLS termination point.  For those multiple MPLS label case it is already handled and I use existing mpls header to copy.  I will closely look at it one more time probably I am missing your point. I think you are probably saying extract ethtype from packet and use it to derive ttl and tos?

Yes, that's what I had in mind.

Thanks,

Ben.



More information about the dev mailing list