On Thu, Apr 14, 2011 at 5:04 PM, Kiran Yedavalli < [email protected]> 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. > This is no reason not to use metadata. I don't believe your "software" pipeline has to match your "hardware" pipeline. The switch can translate the controller request to push 2 labels on 2 tables to pushing 2 labels on one hardware table. I definitely understand that this could become non-trivial. > > Also, what is the reason why Action Set does not support more than one > action of the same kind? > Its pretty complicated to handle multiple actions (if it was an ActionList) because it involves "insertion" of actions in a specific order on a table match. > > 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
