On Thursday, April 14, 2011 at 5:04 PM, Kiran Yedavalli wrote: 
> Thanks Rajiv and Dan. Looks like we need metadata in any case for this to 
> work. We initially thought of this, but our platform does not support 
> metadata, so was wondering if there is a way without using metadata. Looks 
> like there is none. 
> 
> Also, what is the reason why Action Set does not support more than one action 
> of the same kind?
One reason might be because there would be ambiguity when adding an action of 
whether you were overwriting or adding. Otherwise I think it's just for 
simplifying the spec.

Given that a hardware platform supports a particular action or parsing (for 
example, adding two MPLS tags at a time or matching IP after an MPLS tag) I 
think there will likely be vendor extensions that do these sorts of things for 
1.1.

-Dan

> Thanks
> Kiran
> 
> From: Rajiv Ramanathan [mailto:[email protected]] 
> Sent: Thursday, April 14, 2011 1:58 PM
> To: Kiran Yedavalli
> Cc: [email protected]
> Subject: Re: [openflow-discuss] Pushing 2 MPLS labels.
> 
> A couple of solutions (variations of the same theme) are: 
> 
> Table 0: match on dest IP, set metadata 
> Table 1: match on input port, push inner label
> Table 3: match on metadata, push outer label
> 
> or 
> 
> Table 0: match on dest IP and input port, set metadata and push inner label 
> Table 1: match on metadata, push outer labe.
> 
> 
> On Thu, Apr 14, 2011 at 10:37 AM, Kiran Yedavalli 
> <[email protected]> wrote:
> > Hi, 
> > 
> > The problem is to push two MPLS labels onto a packet, the inner one based 
> > on input port and the outer one based on destination IP address. However, 
> > the spec does not allow this in any way. We looked at three options:
> > 
> > Option 1. Match on input port on table 0 and push a MPLS label, next, match 
> > on dest IP address in table 1 and push a MPLS label. The spec does not 
> > allows this, because we cannot look at the IP address after we push a MPLS 
> > label, according to the spec.
> > 
> > Option 2. Match on dest IP address on table 0 and push a MPLS label, next, 
> > match on input port in table 1 and push a MPLS label. But in this case, 
> > according to the spec, we can only push an outmost label everytime we push. 
> > This does not work for us either.
> > 
> > Option 3. Accumlate all actions in the Action Set using the WriteActions 
> > Instruction. This does not work either, because the Action Set cannot have 
> > more than one of the same kind of action. 
> > 
> > Is there any other way of accomplishing this? If not, we think this is a 
> > flaw in the spec that does not allow for inserting more than one label.
> > 
> > Thanks
> > Kiran 
> > 
> > 
> > 
> > 
> > 
> > _______________________________________________
> > openflow-discuss mailing list
> > [email protected]
> > https://mailman.stanford.edu/mailman/listinfo/openflow-discuss
> 
> _______________________________________________
> openflow-discuss mailing list
> [email protected]
> https://mailman.stanford.edu/mailman/listinfo/openflow-discuss
> 

_______________________________________________
openflow-discuss mailing list
[email protected]
https://mailman.stanford.edu/mailman/listinfo/openflow-discuss

Reply via email to