Hi,

> 3.  What is the difference between 'Action list' & 'Action set'?
An 'Action set' contains a set of actions, i.e. only one action of a type can 
exist within the set. The order the actions were inserted into the set is 
irrelevant, their execution order is defined by the spec (p. 12.).
An 'Action list' on the other hand can contain any number of the same type of 
action, and the execution order of these actions is defined by their order in 
the list.

Note that in the structures defined by the spec., both sets and lists are 
stored as lists (i.e. actions one after the other). But their interpretation 
should differ in the datapath according to the spec.

> 2. ... How action set can be associated with each packet.

When a packet enters the pipeline, you associate an action set with it, which 
is at that time empty. When the packet encounters a write instruction, actions 
of that instruction are put into the action set of the packet. If there are 
actions of the same type in both the write instruction, and in the packet's 
action set, only those of the instruction's are kept. If a clear instruction is 
executed, the packet's action set is emptied. (If a flow entry has both clear 
and write instructions, clear is always executed first.)
When the packet exits the pipeline, if it has some actions in its action set, 
they will be executed in the order defined by the spec (p. 12.).

1> My question is that is only the Apply-Actions instruction and the Packet-out 
message include an action list. What about the 'Clear-action' and Write-action 
instructions? If these later instructions does not contain any action list, 
then which action-list is cleared by 'Clear-action'. Where that action list is 
stored.
As now it should be clearer, the Apply instruction and packet-out message 
contains an action list in the sense that those actions will be executed in the 
order they appear in the list, and also that multiple types of the same action 
is accepted.
On the other hand, Write instruction contains a set, which is only appended to 
the packet's action set. Clear action does not store actions.

Regards,
Zoltan.


________________________________
From: [email protected] 
[[email protected]] On Behalf Of Tahir Rauf 
[[email protected]]
Sent: Friday, April 08, 2011 2:48 PM
To: [email protected]
Subject: [openflow-discuss] Ambiguities about Instructions and Actions

Hi,

I have some ambiguities in understanding the OpenFlowSpec-v1.1.0 document. Can 
you please help me in clarifying the things
1.  In section 4.6, the document writes

    "Applies the speci c action(s) immediately, without any change to the 
Action Set. This
     instruction may be used to modify the packet between two tables or to 
execute
     multiple actions of the same type. The actions are speci ed as an action 
list (see 4.8)"

2. Then it writes in section 4.8 that

    "The Apply-Actions instruction and the Packet-out message include an action 
list"

Up till now all seems right. I am considering that action list is stored along 
with Apply-Actions instruction in flow table. And whenever a flow matches, the 
switch applies all actions associated with the Apply-Actions instruction. 
Similarly, in case of Packet-out message, the controller send the action list 
along with message.

Ambiguities:
1.  My question is that is only the Apply-Actions instruction and the 
Packet-out message include an action list. What about the 'Clear-action' and 
Write-action instructions? If these later
     instructions does not contain any action list, then which action-list is 
cleared by 'Clear-action'. Where that action list is stored.

2.  In section 4.7, the document says that
     "An action set is associated with each packet"
      What does it mean? How action set can be associated with each packet.

3.  What is the difference between 'Action list' & 'Action set'?


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

Reply via email to